From 4817dbf0163ab4b63d2b068489bc3bd97e7cca33 Mon Sep 17 00:00:00 2001 From: zhangyongzhangyong <2012005003@qq.coom> Date: Tue, 11 Feb 2020 12:47:48 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=AE=E9=A2=98=E9=A1=B9=E7=9B=AE=E6=95=B0?= =?UTF-8?q?=E9=87=8F=E7=B1=BB=E7=9B=AE=E5=88=86=E6=9E=90=20=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/IssueStatisticsInfoFormDTO.java | 50 +++++++++++++++++++ .../result/IssueStatisticsInfoResultDTO.java | 19 +++++++ .../controller/IssueAnalysisController.java | 21 ++++++-- .../modules/issue/dao/IssueAnalysisDao.java | 29 +++++++++++ .../issue/service/IssueAnalysisService.java | 12 +++++ .../impl/IssueAnalysisServiceImpl.java | 22 ++++++++ .../mapper/issue/IssueAnalysisDao.xml | 49 ++++++++++++++++++ .../ApiAnalysisIssueController.java | 22 +++++++- .../epdc/feign/AnalysisIssueFeignClient.java | 16 ++++-- .../AnalysisIssueFeignClientFallback.java | 9 ++++ .../epdc/service/AnalysisIssueService.java | 13 ++++- .../impl/AnalysisIssueServiceImpl.java | 9 ++++ 12 files changed, 262 insertions(+), 9 deletions(-) create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/form/IssueStatisticsInfoFormDTO.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueStatisticsInfoResultDTO.java diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/form/IssueStatisticsInfoFormDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/form/IssueStatisticsInfoFormDTO.java new file mode 100644 index 000000000..ce629a24f --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/form/IssueStatisticsInfoFormDTO.java @@ -0,0 +1,50 @@ +package com.elink.esua.epdc.dto.issue.form; + +import lombok.Data; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotBlank; +import java.util.List; + +/** + * @Description 议题项目数量类目分析DTO + * @Author zy + * @Date 2020/2/11 11:58 + */ +@Data +public class IssueStatisticsInfoFormDTO { + private static final long serialVersionUID = 6544783947414092507L; + /** + * 主键 + */ + private String id; + + /** + * 页码 + */ + @Min(value = 1, message = "页码必须大于0") + private Integer pageIndex; + + /** + * 页容量,默认5页 + */ + @Min(value = 1, message = "每页条数必须大于0") + private Integer pageSize; + + /** + * 第一页查询发起时的时间 + */ + @NotBlank(message = "时间戳不能为空") + private String timestamp; + + /** + * 分类类别, 默认1 + */ + @NotBlank(message = "分类类别不能为空") + private String cotegoryType; + + /** + * 部门ID列表 + */ + List gridIds; +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueStatisticsInfoResultDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueStatisticsInfoResultDTO.java new file mode 100644 index 000000000..28b8a2c69 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueStatisticsInfoResultDTO.java @@ -0,0 +1,19 @@ +package com.elink.esua.epdc.dto.issue.result; + +/** + * @Description 议题项目数量类目分析DTO + * @Author zy + * @Date 2020/2/11 11:58 + */ +public class IssueStatisticsInfoResultDTO { + + /** + * 分类名称 + */ + private String cotegoryName; + + /** + * 数量 + */ + private Integer count; +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/IssueAnalysisController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/IssueAnalysisController.java index 62691fbc9..ac5e56b4b 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/IssueAnalysisController.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/IssueAnalysisController.java @@ -2,15 +2,15 @@ package com.elink.esua.epdc.modules.issue.controller; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueClassifiedStatisticDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; import com.elink.esua.epdc.modules.issue.service.IssueAnalysisService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import java.util.List; import java.util.Map; /** @@ -62,4 +62,17 @@ public class IssueAnalysisController { PageData page = issueAnalysisService.listIssueClassifiedStatistic(params); return new Result>().ok(page); } + + /** + * @Description: 议题项目数量类目分析 + * @Param: [tokenDto, formDto] + * @return: com.elink.esua.epdc.commons.tools.utils.Result> + * @Author: zy + * @Date: 2020-02-11 + */ + @GetMapping("getStatisticsByCategory") + public Result> getStatisticsByCategory(@RequestBody IssueStatisticsInfoFormDTO formDTO) { + List list = issueAnalysisService.getStatisticsByCategoryList(formDTO); + return new Result>().ok(list); + } } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueAnalysisDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueAnalysisDao.java index 97ed5ea82..34df10a9d 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueAnalysisDao.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueAnalysisDao.java @@ -18,8 +18,10 @@ package com.elink.esua.epdc.modules.issue.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueClassifiedStatisticDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -77,4 +79,31 @@ public interface IssueAnalysisDao extends BaseDao { * @Date 2020/2/11 10:09 **/ List selectThreeIssueClassifiedStatistic(Map params); + + /** + * @Description: 一级类目议题项目数量类目分析 + * @Param: [formDto] + * @return: java.util.List + * @Author: zy + * @Date: 2020-02-11 + */ + List getStatisticsByFirstCategory(IssueStatisticsInfoFormDTO formDto); + + /** + * @Description: 二级类目议题项目数量类目分析 + * @Param: [formDto] + * @return: java.util.List + * @Author: zy + * @Date: 2020-02-11 + */ + List getStatisticsByTwoCategory(IssueStatisticsInfoFormDTO formDto); + + /** + * @Description: 三级类目议题项目数量类目分析 + * @Param: [formDto] + * @return: java.util.List + * @Author: zy + * @Date: 2020-02-11 + */ + List getStatisticsByThreeCategory(IssueStatisticsInfoFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueAnalysisService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueAnalysisService.java index e2edb5e0c..32fc131c5 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueAnalysisService.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueAnalysisService.java @@ -1,9 +1,12 @@ package com.elink.esua.epdc.modules.issue.service; import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueClassifiedStatisticDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; +import java.util.List; import java.util.Map; /** @@ -38,4 +41,13 @@ public interface IssueAnalysisService { * @Date 2020/2/11 9:41 **/ PageData listIssueClassifiedStatistic(Map params); + + /** + * @Description: 议题项目数量类目分析 + * @Param: [formDto] + * @return: java.util.List + * @Author: zy + * @Date: 2020-02-11 + */ + List getStatisticsByCategoryList(IssueStatisticsInfoFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueAnalysisServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueAnalysisServiceImpl.java index 7bd3004a1..957feb2ec 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueAnalysisServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueAnalysisServiceImpl.java @@ -8,8 +8,10 @@ import com.elink.esua.epdc.commons.tools.security.user.SecurityUser; import com.elink.esua.epdc.commons.tools.security.user.UserDetail; import com.elink.esua.epdc.datasources.DataSourceNames; import com.elink.esua.epdc.datasources.annotation.DataSource; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueClassifiedStatisticDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; import com.elink.esua.epdc.modules.issue.dao.IssueAnalysisDao; import com.elink.esua.epdc.modules.issue.service.IssueAnalysisService; import org.apache.commons.lang3.StringUtils; @@ -87,4 +89,24 @@ public class IssueAnalysisServiceImpl extends BaseServiceImpl(list, page.getTotal()); } + + /** + * @Description: 议题项目数量类目分析 + * @Param: [formDto] + * @return: java.util.List + * @Author: zy + * @Date: 2020-02-11 + */ + @Override + public List getStatisticsByCategoryList(IssueStatisticsInfoFormDTO formDto) { + List list = new ArrayList<>(); + if ("1".equals(formDto.getCotegoryType())){ + list = baseDao.getStatisticsByFirstCategory(formDto); + } else if ("2".equals(formDto.getCotegoryType())) { + list = baseDao.getStatisticsByFirstCategory(formDto); + } else if ("3".equals(formDto.getCotegoryType())) { + list = baseDao.getStatisticsByFirstCategory(formDto); + } + return list; + } } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/issue/IssueAnalysisDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/issue/IssueAnalysisDao.xml index 02c0cade2..c19254811 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/issue/IssueAnalysisDao.xml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/issue/IssueAnalysisDao.xml @@ -187,4 +187,53 @@ + + + + + diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAnalysisIssueController.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAnalysisIssueController.java index 7f1abb7ef..66564590e 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAnalysisIssueController.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAnalysisIssueController.java @@ -2,14 +2,19 @@ package com.elink.esua.epdc.controller; import com.elink.esua.epdc.common.token.dto.TokenDto; import com.elink.esua.epdc.commons.tools.annotation.LoginUser; +import com.elink.esua.epdc.commons.tools.security.user.SecurityUser; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; import com.elink.esua.epdc.service.AnalysisIssueService; -import com.elink.esua.epdc.service.AnalysisItemService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + /** * 移动端接口-数据分析模块(项目) * @Author LPF @@ -34,4 +39,19 @@ public class ApiAnalysisIssueController { public Result test(@LoginUser TokenDto tokenDto) { return analysisIssueService.test(); } + + /** + * @Description: 议题项目数量类目分析 + * @Param: [tokenDto, formDto] + * @return: com.elink.esua.epdc.commons.tools.utils.Result> + * @Author: zy + * @Date: 2020-02-11 + */ + @GetMapping("getStatisticsByCategory") + public Result> getStatisticsByCategory(@LoginUser TokenDto tokenDto, IssueStatisticsInfoFormDTO formDto) { + //效验数据 + ValidatorUtils.validateEntity(formDto); + formDto.setGridIds(SecurityUser.getUser().getDeptIdList()); + return analysisIssueService.getStatisticsByCategory(formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AnalysisIssueFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AnalysisIssueFeignClient.java index d7a96d881..1fa325750 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AnalysisIssueFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AnalysisIssueFeignClient.java @@ -3,12 +3,15 @@ package com.elink.esua.epdc.feign; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.config.FeignRequestInterceptor; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; import com.elink.esua.epdc.feign.fallback.AnalysisIssueFeignClientFallback; -import com.elink.esua.epdc.feign.fallback.AnalysisItemFeignClientFallback; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; +import java.util.List; + /** * 评价模块调用-移动app端 * @Author LPF @@ -28,6 +31,13 @@ public interface AnalysisIssueFeignClient { @GetMapping(value = "analysis/item/test", consumes = MediaType.APPLICATION_JSON_VALUE) Result test(); - - + /** + * @Description: 议题项目数量类目分析 + * @Param: [formDto] + * @return: com.elink.esua.epdc.commons.tools.utils.Result> + * @Author: zy + * @Date: 2020-02-11 + */ + @GetMapping(value = "analysis/issue/getStatisticsByCategory", consumes = MediaType.APPLICATION_JSON_VALUE) + Result> getStatisticsByCategory(IssueStatisticsInfoFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AnalysisIssueFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AnalysisIssueFeignClientFallback.java index 73d7945b9..fdd7d72aa 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AnalysisIssueFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AnalysisIssueFeignClientFallback.java @@ -3,10 +3,14 @@ package com.elink.esua.epdc.feign.fallback; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; import com.elink.esua.epdc.feign.AnalysisIssueFeignClient; import org.springframework.stereotype.Component; +import java.util.List; + /** * @Author LPF * @Date 2019/11/18 16:39 @@ -20,4 +24,9 @@ public class AnalysisIssueFeignClientFallback implements AnalysisIssueFeignClien return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "test"); } + @Override + public Result> getStatisticsByCategory(IssueStatisticsInfoFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "getStatisticsByCategory", formDto); + } + } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AnalysisIssueService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AnalysisIssueService.java index d1c5e4bfc..9859e8ebc 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AnalysisIssueService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AnalysisIssueService.java @@ -1,6 +1,10 @@ package com.elink.esua.epdc.service; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; + +import java.util.List; /** * 项目模块-数据分析移动端 @@ -18,5 +22,12 @@ public interface AnalysisIssueService { */ Result test(); - + /** + * @Description: 议题项目数量类目分析 + * @Param: [tokenDto, formDto] + * @return: com.elink.esua.epdc.commons.tools.utils.Result> + * @Author: zy + * @Date: 2020-02-11 + */ + Result> getStatisticsByCategory(IssueStatisticsInfoFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AnalysisIssueServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AnalysisIssueServiceImpl.java index fc7669c5d..895bcabd1 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AnalysisIssueServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AnalysisIssueServiceImpl.java @@ -2,12 +2,16 @@ package com.elink.esua.epdc.service.impl; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.issue.form.IssueStatisticsInfoFormDTO; +import com.elink.esua.epdc.dto.issue.result.IssueStatisticsInfoResultDTO; import com.elink.esua.epdc.feign.AnalysisIssueFeignClient; import com.elink.esua.epdc.service.AnalysisIssueService; import com.elink.esua.epdc.service.AnalysisItemService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** * 项目模块-移动app端 * @Author LPF @@ -25,4 +29,9 @@ public class AnalysisIssueServiceImpl implements AnalysisIssueService { public Result test() { return analysisIssueFeignClient.test(); } + + @Override + public Result> getStatisticsByCategory(IssueStatisticsInfoFormDTO formDto) { + return analysisIssueFeignClient.getStatisticsByCategory(formDto); + } }