From f821261ec8e199ba8084a5f183367b3ef1878821 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B2=E6=A0=91=E9=80=9A?= <1976590620@qq.com> Date: Fri, 20 Dec 2019 16:52:05 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BD=91=E6=A0=BC=E5=B7=A5=E4=BD=9C=E8=AF=84?= =?UTF-8?q?=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- esua-epdc/epdc-gateway/pom.xml | 8 +-- .../epdc/constant/ItemEvaluationLevel.java | 17 +++++ .../item/controller/ItemController.java | 15 +++- .../esua/epdc/modules/item/dao/ItemDao.java | 10 ++- .../modules/item/service/ItemService.java | 12 +++- .../item/service/impl/ItemServiceImpl.java | 26 ++++++- .../main/resources/mapper/item/ItemDao.xml | 29 ++++++++ .../form/KpiEventJobEvaluationFromDTO.java | 39 ++++++++++ .../controller/KpiMetaDataController.java | 2 + .../esua/epdc/feign/AdminFeignClient.java | 2 +- .../esua/epdc/feign/EventFeignClient.java | 13 +++- .../fallback/EventFeignClientFallback.java | 6 ++ .../esua/epdc/service/KpiMetaDataService.java | 9 +++ .../service/impl/KpiMetaDataServiceImpl.java | 72 ++++++++++++++++++- 14 files changed, 246 insertions(+), 14 deletions(-) create mode 100644 esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ItemEvaluationLevel.java create mode 100644 esua-epdc/epdc-module/epdc-kpi/epdc-kpi-client/src/main/java/com/elink/esua/epdc/dto/form/KpiEventJobEvaluationFromDTO.java diff --git a/esua-epdc/epdc-gateway/pom.xml b/esua-epdc/epdc-gateway/pom.xml index a6980a704..daac2269c 100644 --- a/esua-epdc/epdc-gateway/pom.xml +++ b/esua-epdc/epdc-gateway/pom.xml @@ -99,8 +99,8 @@ lb://epdc-auth-server - lb://epdc-admin-server - + + http://127.0.0.1:9092 lb://epdc-activiti-server @@ -116,8 +116,8 @@ http://127.0.0.1:9064 lb://epdc-oss-server - lb://epdc-events-server - + + http://127.0.0.1:9066 lb://epdc-services-server diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ItemEvaluationLevel.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ItemEvaluationLevel.java new file mode 100644 index 000000000..da75c9f6f --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ItemEvaluationLevel.java @@ -0,0 +1,17 @@ +package com.elink.esua.epdc.constant; + + +/** + * @author: qushutong + * @Date: 2019/12/20 15:53 + * @Description: 评价结果:0-不满意,1-基本满意,2-非常满意 + */ +public interface ItemEvaluationLevel { + + String LevaluationLevelBad = "0"; + + String LevaluationLevelBetter = "1"; + + String LevaluationLevelBest = "2"; + +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java index 0c0b1910e..2c1ac6036 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java @@ -29,8 +29,8 @@ import com.elink.esua.epdc.dto.KpiMetaDataDTO; import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO; import com.elink.esua.epdc.dto.form.EpdcEventsItemMataFromDTO; import com.elink.esua.epdc.dto.events.form.EventDeleteCommentsFormDTO; -import com.elink.esua.epdc.dto.form.KpiEventEvaluationFromDTO; import com.elink.esua.epdc.dto.form.KpiMetaDataOfEventsFormDTO; +import com.elink.esua.epdc.dto.form.KpiEventJobEvaluationFromDTO; import com.elink.esua.epdc.dto.item.ItemDTO; import com.elink.esua.epdc.dto.item.ItemPendingHandleDTO; import com.elink.esua.epdc.dto.item.form.ItemHandleSubmitFormDTO; @@ -199,4 +199,17 @@ public class ItemController { return itemService.ListItemCountData(epdcEventsItemMataFromDTO); } + + /*** + * 网格工作评议 + * @param kpiEventJobEvaluationFromDTO + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author qushutong + * @date 2019/12/20 15:37 + */ + @PostMapping("queryListJobEvaluation") + Result> queryListJobEvaluation(@RequestBody KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO){ + + return itemService.listJobEvaluation(kpiEventJobEvaluationFromDTO); + } } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java index 81015b942..243aa38dd 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java @@ -20,9 +20,9 @@ package com.elink.esua.epdc.modules.item.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.dto.KpiMetaDataDTO; import com.elink.esua.epdc.dto.form.EpdcEventsItemMataFromDTO; -import com.elink.esua.epdc.dto.form.KpiEventEvaluationFromDTO; import com.elink.esua.epdc.dto.events.result.KpiTimeRuleBindItemResoultDto; import com.elink.esua.epdc.dto.form.KpiMetaDataOfEventsFormDTO; +import com.elink.esua.epdc.dto.form.KpiEventJobEvaluationFromDTO; import com.elink.esua.epdc.dto.item.ItemDTO; import com.elink.esua.epdc.dto.item.ItemPendingHandleDTO; import com.elink.esua.epdc.dto.item.form.ItemCategoryStatisticsFormDTO; @@ -247,4 +247,12 @@ public interface ItemDao extends BaseDao { * @date 2019/12/20 14:30 */ List selectListPeopleEvaluationMetaData(KpiMetaDataOfEventsFormDTO metaDataFormDto); + /*** + * 网格工作评议 不满意 满意 非常满意 统计 + * @param kpiEventJobEvaluationFromDTO + * @return java.util.List + * @author qushutong + * @date 2019/12/20 15:43 + */ + List selectListJobEvaluation(KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO); } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java index 4ddb2e6b7..b771faf8a 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java @@ -23,15 +23,14 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.KpiMetaDataDTO; import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO; import com.elink.esua.epdc.dto.form.EpdcEventsItemMataFromDTO; -import com.elink.esua.epdc.dto.form.KpiEventEvaluationFromDTO; import com.elink.esua.epdc.dto.form.KpiMetaDataOfEventsFormDTO; +import com.elink.esua.epdc.dto.form.KpiEventJobEvaluationFromDTO; import com.elink.esua.epdc.dto.item.ItemDTO; import com.elink.esua.epdc.dto.item.ItemPendingHandleDTO; import com.elink.esua.epdc.dto.item.form.*; import com.elink.esua.epdc.dto.item.result.*; import com.elink.esua.epdc.dto.result.KpiEvaluationAmountResultDTO; import com.elink.esua.epdc.modules.item.entity.ItemEntity; -import org.springframework.web.bind.annotation.RequestBody; import java.util.List; import java.util.Map; @@ -322,4 +321,13 @@ public interface ItemService extends BaseService { * @date 2019/12/18 16:02 */ Result> ListItemCountData(EpdcEventsItemMataFromDTO epdcEventsItemMataFromDTO); + + /*** + * 网格工作评议 + * @param kpiEventJobEvaluationFromDTO + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author qushutong + * @date 2019/12/20 15:40 + */ + Result> listJobEvaluation(KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO); } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java index 56daa7615..a78bcbab0 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java @@ -41,9 +41,9 @@ import com.elink.esua.epdc.dto.SysDeptDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO; import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO; import com.elink.esua.epdc.dto.form.EpdcEventsItemMataFromDTO; -import com.elink.esua.epdc.dto.form.KpiEventEvaluationFromDTO; import com.elink.esua.epdc.dto.events.result.KpiTimeRuleBindItemResoultDto; import com.elink.esua.epdc.dto.form.KpiMetaDataOfEventsFormDTO; +import com.elink.esua.epdc.dto.form.KpiEventJobEvaluationFromDTO; import com.elink.esua.epdc.dto.issue.result.IssueProgressResultDTO; import com.elink.esua.epdc.dto.item.ItemDTO; import com.elink.esua.epdc.dto.item.ItemDeptDTO; @@ -53,7 +53,6 @@ import com.elink.esua.epdc.dto.item.form.*; import com.elink.esua.epdc.dto.item.result.*; import com.elink.esua.epdc.dto.result.KpiEvaluationAmountResultDTO; import com.elink.esua.epdc.enums.ItemHandleCategoryEnum; -import com.elink.esua.epdc.enums.KpiMetaDataEnum; import com.elink.esua.epdc.modules.async.NewsTask; import com.elink.esua.epdc.modules.events.service.EpdcEventsService; import com.elink.esua.epdc.modules.events.service.ImgService; @@ -212,7 +211,11 @@ public class ItemServiceImpl extends BaseServiceImpl implem * 项目列表-移动app端用 * * @Params: [formDto] +<<<<<<< Updated upstream * @Return: com.elink.esua.epdc.commons.tools.utils.Result> +======= + * @Return: com.elink.esua.epdc.commons.tools.utils.Result> +>>>>>>> Stashed changes * @Author: lipengfei * @Date: 2019/10/19 16:47 */ @@ -850,4 +853,23 @@ public class ItemServiceImpl extends BaseServiceImpl implem return new Result>().ok(kpiMetaDataDTOList); } + + @Override + public Result> listJobEvaluation(KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO) { + List kpiMetaDataDTOList; + List allMetaDataList = new ArrayList<>(); + //统计不满意 + kpiEventJobEvaluationFromDTO.setEvaluationLevel(ItemEvaluationLevel.LevaluationLevelBad); + kpiMetaDataDTOList = baseDao.selectListJobEvaluation(kpiEventJobEvaluationFromDTO); + allMetaDataList.addAll(kpiMetaDataDTOList); + //满意 + kpiEventJobEvaluationFromDTO.setEvaluationLevel(ItemEvaluationLevel.LevaluationLevelBetter); + kpiMetaDataDTOList = baseDao.selectListJobEvaluation(kpiEventJobEvaluationFromDTO); + allMetaDataList.addAll(kpiMetaDataDTOList); + //非常满意 + kpiEventJobEvaluationFromDTO.setEvaluationLevel(ItemEvaluationLevel.LevaluationLevelBest); + kpiMetaDataDTOList = baseDao.selectListJobEvaluation(kpiEventJobEvaluationFromDTO); + allMetaDataList.addAll(kpiMetaDataDTOList); + return null; + } } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml index 0b960357b..002f04b58 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml @@ -914,4 +914,33 @@ GROUP BY dept.deptId + + + diff --git a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-client/src/main/java/com/elink/esua/epdc/dto/form/KpiEventJobEvaluationFromDTO.java b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-client/src/main/java/com/elink/esua/epdc/dto/form/KpiEventJobEvaluationFromDTO.java new file mode 100644 index 000000000..b54c011cd --- /dev/null +++ b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-client/src/main/java/com/elink/esua/epdc/dto/form/KpiEventJobEvaluationFromDTO.java @@ -0,0 +1,39 @@ +package com.elink.esua.epdc.dto.form; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * @author: qushutong + * @Date: 2019/12/20 14:59 + * @Description: 网格工作评议 入参 + */ +@Data +public class KpiEventJobEvaluationFromDTO implements Serializable { + + private static final long serialVersionUID = -370689151754223228L; + + /** + * 所有网格 + */ + private List deptIdList; + + /** + * 统计周期开始日 + */ + private Date startDate; + + /** + * 统计周期结束日 + */ + private Date endDate; + + /*** + * 评价结果:0-不满意,1-基本满意,2-非常满意 + */ + private String evaluationLevel; + +} diff --git a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/controller/KpiMetaDataController.java b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/controller/KpiMetaDataController.java index 51f6ac53b..e0af5b4a0 100644 --- a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/controller/KpiMetaDataController.java +++ b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/controller/KpiMetaDataController.java @@ -106,6 +106,8 @@ public class KpiMetaDataController { // kpiMetaDataService.statPeopleEvaluation(); //网格呼叫事项总数 与响应呼叫数(议题流转项目) kpiMetaDataService.createItemMataData(); + //网格工作评议 + kpiMetaDataService.createJobEvaluation(); return new Result(); } diff --git a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java index 6d16111c7..d437de897 100644 --- a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java +++ b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java @@ -22,7 +22,7 @@ import java.util.List; * @email yujintao@elink-cn.com * @date 2019/9/7 9:27 */ -@FeignClient(name = ServiceConstant.EPDC_ADMIN_SERVER, fallback = AdminFeignClientFallback.class) +@FeignClient(name = ServiceConstant.EPDC_ADMIN_SERVER, fallback = AdminFeignClientFallback.class,url = "http://127.0.0.1:9092") public interface AdminFeignClient { /** diff --git a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/EventFeignClient.java b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/EventFeignClient.java index c136bc44b..42d6d8ed2 100644 --- a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/EventFeignClient.java +++ b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/EventFeignClient.java @@ -7,6 +7,7 @@ import com.elink.esua.epdc.dto.form.CategoryInfoFormDTO; import com.elink.esua.epdc.dto.form.EpdcEventsItemMataFromDTO; import com.elink.esua.epdc.dto.form.KpiMetaDataOfEventsFormDTO; import com.elink.esua.epdc.dto.form.KpiEventEvaluationFromDTO; +import com.elink.esua.epdc.dto.form.*; import com.elink.esua.epdc.dto.result.CategoryInfoResultDTO; import com.elink.esua.epdc.dto.result.KpiEvaluationAmountResultDTO; import com.elink.esua.epdc.dto.result.KpiEventReportAmountResultDTO; @@ -15,7 +16,6 @@ import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -24,7 +24,7 @@ import java.util.List; * @Date: 2019/12/4 09:28 * @Description: 事件接口 */ -@FeignClient(name = ServiceConstant.EPDC_EVENTS_SERVER, fallback = EventFeignClientFallback.class) +@FeignClient(name = ServiceConstant.EPDC_EVENTS_SERVER, fallback = EventFeignClientFallback.class,url = "http://127.0.0.1:9066") public interface EventFeignClient { /** @@ -81,4 +81,13 @@ public interface EventFeignClient { @PostMapping(value = "events/item/statPeopleEvaluationMetaData", consumes = MediaType.APPLICATION_JSON_VALUE) Result> statPeopleEvaluationMetaData(KpiMetaDataOfEventsFormDTO metaDataFormDto); + /*** + * 获取网格工作评议 + * @param kpiEventJobEvaluationFromDTO + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author qushutong + * @date 2019/12/20 15:16 + */ + @PostMapping(value = "events/item/queryListJobEvaluation", consumes = MediaType.APPLICATION_JSON_VALUE) + Result> queryListJobEvaluation(KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO); } diff --git a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/fallback/EventFeignClientFallback.java b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/fallback/EventFeignClientFallback.java index b13ca525e..a9126f4ac 100644 --- a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/fallback/EventFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/feign/fallback/EventFeignClientFallback.java @@ -8,6 +8,7 @@ import com.elink.esua.epdc.dto.form.CategoryInfoFormDTO; import com.elink.esua.epdc.dto.form.EpdcEventsItemMataFromDTO; import com.elink.esua.epdc.dto.form.KpiMetaDataOfEventsFormDTO; import com.elink.esua.epdc.dto.form.KpiEventEvaluationFromDTO; +import com.elink.esua.epdc.dto.form.*; import com.elink.esua.epdc.dto.result.CategoryInfoResultDTO; import com.elink.esua.epdc.dto.result.KpiEvaluationAmountResultDTO; import com.elink.esua.epdc.dto.result.KpiEventReportAmountResultDTO; @@ -48,4 +49,9 @@ public class EventFeignClientFallback implements EventFeignClient { public Result> statPeopleEvaluationMetaData(KpiMetaDataOfEventsFormDTO metaDataFormDto) { return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "statPeopleEvaluationMetaData", metaDataFormDto); } + + @Override + public Result> queryListJobEvaluation(KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "queryListJobEvaluation", kpiEventJobEvaluationFromDTO); + } } diff --git a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/KpiMetaDataService.java b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/KpiMetaDataService.java index 8362fbf58..b30c7b8dd 100644 --- a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/KpiMetaDataService.java +++ b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/KpiMetaDataService.java @@ -120,5 +120,14 @@ public interface KpiMetaDataService extends BaseService { * @date 2019/12/18 18:21 */ void createItemMataData(); + + /*** + * 构建元数据 网格工作评议 + * @param + * @return void + * @author qushutong + * @date 2019/12/20 14:48 + */ + void createJobEvaluation(); } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/impl/KpiMetaDataServiceImpl.java b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/impl/KpiMetaDataServiceImpl.java index 8bed7b9f6..59c966417 100644 --- a/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/impl/KpiMetaDataServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/impl/KpiMetaDataServiceImpl.java @@ -33,8 +33,8 @@ import com.elink.esua.epdc.dao.KpiMetaDataDao; import com.elink.esua.epdc.dto.KpiMetaDataDTO; import com.elink.esua.epdc.dto.form.EpdcEventsItemMataFromDTO; import com.elink.esua.epdc.dto.form.KpiMetaDataOfEventsFormDTO; -import com.elink.esua.epdc.dto.form.KpiEventEvaluationFromDTO; import com.elink.esua.epdc.dto.result.KpiEvaluationAmountResultDTO; +import com.elink.esua.epdc.dto.form.KpiEventJobEvaluationFromDTO; import com.elink.esua.epdc.dto.result.KpiEventReportAmountResultDTO; import com.elink.esua.epdc.entity.KpiMetaDataEntity; import com.elink.esua.epdc.enums.KpiCycleEnum; @@ -459,4 +459,74 @@ public class KpiMetaDataServiceImpl extends BaseServiceImpl metaList) { baseDao.deleteListRepetitionMeta(metaList); } + + + @Override + public void createJobEvaluation() { + setMetaDataOfJobEvaluation(KpiCycleEnum.KPI_CYCLE_MONTH.getValue()); + setMetaDataOfJobEvaluation(KpiCycleEnum.KPI_CYCLE_QUARTER.getValue()); + setMetaDataOfJobEvaluation(KpiCycleEnum.KPI_CYCLE_YEAR.getValue()); + } + + private void setMetaDataOfJobEvaluation(String kpiCycle) { + // 获取考核周期开始日 + Date startDate = getKpiStartDateByCycle(kpiCycle); + if (null == startDate) { + return; + } + // 初始化接口入参对象,用于传入events模块 + KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO = new KpiEventJobEvaluationFromDTO(); + kpiEventJobEvaluationFromDTO.setStartDate(startDate); + kpiEventJobEvaluationFromDTO.setEndDate(LocalDateUtils.localDateToDate(YearMonth.now().minusMonths(NumConstant.ONE).atEndOfMonth())); + queryJobMetaByOrganizationType(kpiCycle, kpiEventJobEvaluationFromDTO,OrganizationTypeConstant.ORG_TYPE_DISTRICT_DEPT); + queryJobMetaByOrganizationType(kpiCycle, kpiEventJobEvaluationFromDTO,OrganizationTypeConstant.ORG_TYPE_STREET_DEPT); + + } + + private void queryJobMetaByOrganizationType(String kpiCycle, KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO,String OrganizationType) { + // 声明页容量和页码 + int pageSize = NumConstant.TEN; + int pageIndex = NumConstant.ONE; + + List gridList = deptUtils.getDeptIdList(OrganizationTypeConstant.ORG_TYPE_STREET_DEPT, pageSize, pageIndex); + do { + kpiEventJobEvaluationFromDTO.setDeptIdList(gridList); + // 从events模块获取统计数据 + List jobEvaluationDataList = this.getjobEvaluationDataModule(kpiEventJobEvaluationFromDTO); + // 组装元数据对象 + List kpiMetaDataEntities = this.packageJobMetaDataList(jobEvaluationDataList, kpiCycle,OrganizationType); + // 插入之前删除已存在 + this.deleteRepetitionMetaList(kpiMetaDataEntities); + // 插入数据库 + this.insertBatch(kpiMetaDataEntities); + pageIndex++; + gridList = deptUtils.getDeptIdList(OrganizationTypeConstant.ORG_TYPE_GRID_PARTY, pageSize, pageIndex); + } while (CollUtil.isNotEmpty(gridList)); + } + + /*** + * 组装数据 + * @param KpiMetaDataDTO events模块获取统计数据 + * @param kpiCycle 月 季 年 + * @return java.util.List + * @author qushutong + * @date 2019/12/20 15:26 + */ + private List packageJobMetaDataList(List KpiMetaDataDTO, String kpiCycle,String OrganizationType) { + for (KpiMetaDataDTO item : KpiMetaDataDTO) { + item.setKpiCycle(kpiCycle); + item.setDeptTypeKey(OrganizationType); + } + return ConvertUtils.sourceToTarget(KpiMetaDataDTO,KpiMetaDataEntity.class); + } + + private List getjobEvaluationDataModule(KpiEventJobEvaluationFromDTO kpiEventJobEvaluationFromDTO) { + Result> listResult = eventFeignClient.queryListJobEvaluation(kpiEventJobEvaluationFromDTO); + if (!listResult.success() || null == listResult.getData()) { + log.error("统计事件上报数异常"); + throw new RenException("统计事件上报数异常"); + } + return listResult.getData(); + } + } \ No newline at end of file