From 5b0f0d08fcef2f15f6c5a2b50ab38665ba5a2817 Mon Sep 17 00:00:00 2001 From: wxz Date: Thu, 5 Aug 2021 16:44:44 +0800 Subject: [PATCH 01/21] =?UTF-8?q?=E5=A2=9E=E5=8A=A0ribbon=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/feign/OssFeignClient.java | 13 +++++++++++- .../fallback/OssFeignClientFallback.java | 5 +++++ .../com/epmet/controller/TestController.java | 20 +++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java index b5c31ef82f..c6aee484ad 100644 --- a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java +++ b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java @@ -23,6 +23,8 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestPart; import org.springframework.web.multipart.MultipartFile; +import java.net.UnknownHostException; + /** * OSS * @@ -32,7 +34,7 @@ import org.springframework.web.multipart.MultipartFile; @FeignClient(name = ServiceConstant.EPMET_OSS_SERVER, configuration = OssFeignClient.MultipartSupportConfig.class, fallbackFactory = OssFeignClientFallbackFactory.class) //@FeignClient(name = ServiceConstant.EPMET_OSS_SERVER, configuration = OssFeignClient.MultipartSupportConfig.class, fallbackFactory = -// OssFeignClientFallbackFactory.class) +// OssFeignClientFallbackFactory.class, url = "localhost:8083") public interface OssFeignClient { /** * 文件上传 @@ -64,4 +66,13 @@ public interface OssFeignClient { } } + /** + * @Description ribbon测试 + * @return + * @author wxz + * @date 2021.08.05 16:28 + */ + @PostMapping("oss/file/test-ribbon-rcv") + Result testRibbonRcv(); + } diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java index b60e59cc19..9e5a1f5eb4 100644 --- a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java +++ b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java @@ -40,4 +40,9 @@ public class OssFeignClientFallback implements OssFeignClient { return ModuleUtils.feignConError(ServiceConstant.EPMET_OSS_SERVER, "uploadQrCodeV2", file, customerId); } + @Override + public Result testRibbonRcv() { + return ModuleUtils.feignConError(ServiceConstant.EPMET_OSS_SERVER, "testRibbonRcv", null); + } + } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java index 8289c4a5bf..5b624a81b0 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java @@ -10,6 +10,9 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.*; +import java.net.Inet4Address; +import java.net.InetAddress; +import java.net.UnknownHostException; @RestController @RequestMapping("test") @@ -43,4 +46,21 @@ public class TestController { } return new Result(); } + + /** + * @Description ribbon测试 + * @return + * @author wxz + * @date 2021.08.05 16:28 + */ + @PostMapping("test-ribbon-rcv") + public Result testRibbonRcv() { + InetAddress localHost = null; + try { + localHost = Inet4Address.getLocalHost(); + } catch (UnknownHostException e) { + e.printStackTrace(); + } + return new Result().ok(localHost); + } } From d5d182e243afa53d438e43d9bac59e34f162ca37 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Thu, 5 Aug 2021 16:50:04 +0800 Subject: [PATCH 02/21] =?UTF-8?q?=E7=AB=8B=E9=A1=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/service/impl/ResiEventServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index b588736e20..299c5b1676 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -607,7 +607,7 @@ public class ResiEventServiceImpl extends BaseServiceImpl Date: Thu, 5 Aug 2021 17:03:23 +0800 Subject: [PATCH 03/21] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../evaluationindex/extract/FactOriginProjectMainDailyDao.xml | 4 ++-- .../src/main/resources/mapper/project/ProjectDao.xml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml index 11ce137aab..fdf90af1f3 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml @@ -1083,7 +1083,7 @@ FROM fact_origin_project_main_daily WHERE - ORIGIN = 'agency' + (ORIGIN = 'agency' OR ORIGIN = 'resi_event') AND CUSTOMER_ID = #{customerId} AND DATE_ID = #{dateId} @@ -1101,7 +1101,7 @@ FROM fact_origin_project_main_daily WHERE - ORIGIN = 'agency' + (ORIGIN = 'agency' OR ORIGIN = 'resi_event') AND CUSTOMER_ID = #{customerId} AND DATE_ID <= #{dateId} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml index 7b217ec4ff..476ae619c8 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml @@ -227,7 +227,7 @@ rero.ORG_ID, rero.ORG_PID, rero.ORG_PIDS, - re.PROJECT_ID.CREATED_BY, + re.CREATED_BY, re.PROJECT_ID from resi_event_report_org rero inner join resi_event re on rero.RESI_EVENT_ID = re.id and re.SHIFT_PROJECT = 1 and re.DEL_FLAG = '0' From 732fa1bf1c85d9ba4a7f77a93e50a296331171cf Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Thu, 5 Aug 2021 17:05:59 +0800 Subject: [PATCH 04/21] =?UTF-8?q?resi=5Fevent.=E9=A1=B9=E7=9B=AEid.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/service/impl/ResiEventServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index 299c5b1676..c3591fa5fa 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -598,6 +598,7 @@ public class ResiEventServiceImpl extends BaseServiceImpl Date: Thu, 5 Aug 2021 17:12:02 +0800 Subject: [PATCH 05/21] =?UTF-8?q?=E6=88=91=E7=9A=84=E6=8A=A5=E4=BA=8B?= =?UTF-8?q?=EF=BC=9A=E5=B7=B2=E7=BB=8F=E7=AB=8B=E9=A1=B9=E6=88=96=E8=80=85?= =?UTF-8?q?=E5=B7=B2=E5=8A=9E=E7=BB=93=E7=9A=84=E4=B8=8D=E8=83=BD=E5=9B=9E?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/service/impl/ResiEventServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index c3591fa5fa..bc013eb0fc 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -478,8 +478,8 @@ public class ResiEventServiceImpl extends BaseServiceImpl baseDao.queryMyReported(formDTO.getUserId(), formDTO.getStatusCondition())); result.getList().forEach(resultDTO->{ - if(EventConstant.EVENT_STATUS_CLOSED_CASE.equals(resultDTO.getStatus())){ - // 已办结的不显示回复按钮 + if(EventConstant.EVENT_STATUS_CLOSED_CASE.equals(resultDTO.getStatus())||resultDTO.getShiftProject()){ + // 已办结的、立项的不显示回复按钮 resultDTO.setReplyButtonFlag("false"); }else{ // 处理中的事件 From 9bffeef2b1f70807860917dcad8d0cb7a775235c Mon Sep 17 00:00:00 2001 From: wxz Date: Thu, 5 Aug 2021 17:30:01 +0800 Subject: [PATCH 06/21] =?UTF-8?q?=E5=A2=9E=E5=8A=A0ribbon=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/dto/form/TestFormDTO.java | 14 ++++++++++++++ .../main/java/com/epmet/feign/OssFeignClient.java | 6 ++++-- .../feign/fallback/OssFeignClientFallback.java | 4 +++- .../java/com/epmet/controller/TestController.java | 6 +++++- .../com/epmet/modules/test/TestController.java | 13 +++++++++++++ 5 files changed, 39 insertions(+), 4 deletions(-) create mode 100644 epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/form/TestFormDTO.java diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/form/TestFormDTO.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/form/TestFormDTO.java new file mode 100644 index 0000000000..c78ca8d074 --- /dev/null +++ b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/form/TestFormDTO.java @@ -0,0 +1,14 @@ +package com.epmet.dto.form; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class TestFormDTO { + + private Long sleepPeriod; + +} diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java index c6aee484ad..98142da53a 100644 --- a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java +++ b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java @@ -10,6 +10,7 @@ package com.epmet.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.TestFormDTO; import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.feign.fallback.OssFeignClientFallback; import com.epmet.feign.fallback.OssFeignClientFallbackFactory; @@ -19,6 +20,7 @@ import org.springframework.cloud.openfeign.FeignClient; import org.springframework.context.annotation.Bean; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestPart; import org.springframework.web.multipart.MultipartFile; @@ -72,7 +74,7 @@ public interface OssFeignClient { * @author wxz * @date 2021.08.05 16:28 */ - @PostMapping("oss/file/test-ribbon-rcv") - Result testRibbonRcv(); + @PostMapping("/oss/test/test-ribbon-rcv") + Result testRibbonRcv(@RequestBody TestFormDTO input); } diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java index 9e5a1f5eb4..f5e51ee96c 100644 --- a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java +++ b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java @@ -11,9 +11,11 @@ package com.epmet.feign.fallback; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.TestFormDTO; import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.feign.OssFeignClient; import org.springframework.stereotype.Component; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.multipart.MultipartFile; /** @@ -41,7 +43,7 @@ public class OssFeignClientFallback implements OssFeignClient { } @Override - public Result testRibbonRcv() { + public Result testRibbonRcv(@RequestBody TestFormDTO input) { return ModuleUtils.feignConError(ServiceConstant.EPMET_OSS_SERVER, "testRibbonRcv", null); } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java index 5b624a81b0..a1ebfe9f7b 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java @@ -1,6 +1,7 @@ package com.epmet.controller; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.TestFormDTO; import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.service.OssService; import org.apache.commons.io.FileUtils; @@ -54,12 +55,15 @@ public class TestController { * @date 2021.08.05 16:28 */ @PostMapping("test-ribbon-rcv") - public Result testRibbonRcv() { + public Result testRibbonRcv(@RequestBody TestFormDTO input) { InetAddress localHost = null; try { + Thread.sleep(input.getSleepPeriod()); localHost = Inet4Address.getLocalHost(); } catch (UnknownHostException e) { e.printStackTrace(); + } catch (InterruptedException e) { + e.printStackTrace(); } return new Result().ok(localHost); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/test/TestController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/test/TestController.java index c86286bfc5..6e7c165532 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/test/TestController.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/test/TestController.java @@ -2,6 +2,9 @@ package com.epmet.modules.test; import com.epmet.commons.tools.utils.HttpContextUtils; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.TestFormDTO; +import com.epmet.feign.OssFeignClient; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -12,6 +15,9 @@ import javax.servlet.http.HttpServletRequest; @RequestMapping("test") public class TestController { + @Autowired + private OssFeignClient ossFeignClient; + @PostMapping("get-req-info") public Result testDomain(HttpServletRequest request) { String requestServerNameAndPort = HttpContextUtils.getRequestServerNameAndPort(); @@ -27,4 +33,11 @@ public class TestController { return new Result(); } + @PostMapping("test-ribbon-sender") + public Result testRibbonSender() { + TestFormDTO form = new TestFormDTO(40000l); + Result result = ossFeignClient.testRibbonRcv(form); + return result; + } + } From bd3414af43011e2118a042946246dcd7af7e9241 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Thu, 5 Aug 2021 17:40:49 +0800 Subject: [PATCH 07/21] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20title=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2org?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/result/EventTitleOrgResultDTO.java | 20 ++++++++++++++++++ .../CustomerStaffGridController.java | 14 +++++++++++++ .../com/epmet/dao/CustomerStaffGridDao.java | 9 ++++++++ .../service/CustomerStaffGridService.java | 9 ++++++++ .../impl/CustomerStaffGridServiceImpl.java | 12 +++++++++++ .../resources/mapper/CustomerStaffGridDao.xml | 21 +++++++++++++++++++ 6 files changed, 85 insertions(+) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/EventTitleOrgResultDTO.java diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/EventTitleOrgResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/EventTitleOrgResultDTO.java new file mode 100644 index 0000000000..50b05afb6c --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/EventTitleOrgResultDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2021/8/5 5:23 下午 + * @DESC + */ +@Data +public class EventTitleOrgResultDTO implements Serializable { + + private static final long serialVersionUID = -517506506008916648L; + + private String agencyId; + private String gridId; + private String gridName; +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerStaffGridController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerStaffGridController.java index 53e6330d06..cba514d051 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerStaffGridController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerStaffGridController.java @@ -17,7 +17,9 @@ package com.epmet.controller; +import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; @@ -29,6 +31,7 @@ import com.epmet.dto.CustomerStaffGridDTO; import com.epmet.dto.form.CommonGridIdFormDTO; import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.dto.result.CustomerGridByUserIdResultDTO; +import com.epmet.dto.result.EventTitleOrgResultDTO; import com.epmet.dto.result.GridStaffResultDTO; import com.epmet.excel.CustomerStaffGridExcel; import com.epmet.service.CustomerStaffGridService; @@ -131,4 +134,15 @@ public class CustomerStaffGridController { public Result> selectGridStaffByGridIds(@RequestBody List gridIds){ return new Result>().ok(customerStaffGridService.selectGridStaffByGridIds(gridIds)); } + + /** + * @Description 查询ORG + * @Param userId + * @author zxc + * @date 2021/8/5 5:36 下午 + */ + @PostMapping("eventorg") + public Result> eventOrg(@LoginUser TokenDto tokenDto){ + return new Result>().ok(customerStaffGridService.eventOrg(tokenDto.getUserId())); + } } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffGridDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffGridDao.java index d9ce1b0e61..426a0e6b3a 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffGridDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerStaffGridDao.java @@ -22,6 +22,7 @@ import com.epmet.dto.CustomerGridDTO; import com.epmet.dto.CustomerStaffDepartmentDTO; import com.epmet.dto.CustomerStaffGridDTO; import com.epmet.dto.form.LatestGridFormDTO; +import com.epmet.dto.result.EventTitleOrgResultDTO; import com.epmet.dto.result.GridStaffResultDTO; import com.epmet.entity.CustomerStaffGridEntity; import org.apache.ibatis.annotations.Mapper; @@ -106,4 +107,12 @@ public interface CustomerStaffGridDao extends BaseDao { * @date 2021/6/8 3:36 下午 */ List selectGridStaffByGridIds(@Param("gridIds") List gridIds); + + /** + * @Description 查询ORG + * @Param userId + * @author zxc + * @date 2021/8/5 5:36 下午 + */ + List eventOrg(@Param("userId") String userId); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerStaffGridService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerStaffGridService.java index 0cf4041cce..1e78f3725b 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerStaffGridService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerStaffGridService.java @@ -26,6 +26,7 @@ import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.dto.result.CommonStaffInfoResultDTO; import com.epmet.dto.result.CustomerGridByUserIdResultDTO; +import com.epmet.dto.result.EventTitleOrgResultDTO; import com.epmet.dto.result.GridStaffResultDTO; import com.epmet.entity.CustomerStaffGridEntity; @@ -126,4 +127,12 @@ public interface CustomerStaffGridService extends BaseService selectGridStaffByGridIds(List gridIds); + + /** + * @Description 查询ORG + * @Param userId + * @author zxc + * @date 2021/8/5 5:36 下午 + */ + List eventOrg(String userId); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerStaffGridServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerStaffGridServiceImpl.java index ac8abc82fc..27d3da6576 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerStaffGridServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerStaffGridServiceImpl.java @@ -31,6 +31,7 @@ import com.epmet.dto.CustomerStaffGridDTO; import com.epmet.dto.form.CommonGridIdFormDTO; import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.dto.result.CustomerGridByUserIdResultDTO; +import com.epmet.dto.result.EventTitleOrgResultDTO; import com.epmet.dto.result.GridStaffResultDTO; import com.epmet.entity.CustomerStaffGridEntity; import com.epmet.feign.EpmetUserOpenFeignClient; @@ -181,4 +182,15 @@ public class CustomerStaffGridServiceImpl extends BaseServiceImpl eventOrg(String userId) { + return baseDao.eventOrg(userId); + } } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml index 5e08a59b97..b1acb714b9 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml @@ -102,6 +102,27 @@ ) + + + insert into customer_staff_grid From 87141c70f14f8462dad17d5f22b8bdefe293a5c7 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Thu, 5 Aug 2021 17:55:23 +0800 Subject: [PATCH 08/21] =?UTF-8?q?=E5=B7=B2=E7=BB=8F=E7=AB=8B=E9=A1=B9?= =?UTF-8?q?=E7=9A=84=E4=B8=8D=E5=85=81=E8=AE=B8=E9=87=8D=E5=A4=8D=E6=93=8D?= =?UTF-8?q?=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/dao/ProjectDao.java | 2 ++ .../src/main/java/com/epmet/service/ProjectService.java | 3 ++- .../main/java/com/epmet/service/impl/ProjectServiceImpl.java | 5 +++++ .../java/com/epmet/service/impl/ProjectTraceServiceImpl.java | 4 ++++ .../src/main/resources/mapper/ProjectDao.xml | 5 +++++ 5 files changed, 18 insertions(+), 1 deletion(-) diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java index a4c1b69b36..0040584f81 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java @@ -215,4 +215,6 @@ public interface ProjectDao extends BaseDao { * @date 2021/8/4 2:43 下午 */ EventProjectInfoDTO selectEventProjectInfo(@Param("projectId")String projectId); + + List selectByOriginId(String originId); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java index 7a5ac21888..1f0fd17a0d 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java @@ -19,7 +19,6 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; -import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.dto.ProjectDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.*; @@ -330,4 +329,6 @@ public interface ProjectService extends BaseService { * @return java.util.List */ List getUnResolvedListByGrid(ShiftProjectListFromDTO fromDTO); + + List getByOriginId(String eventId); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java index f15a2a7c24..bc6a2616c7 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java @@ -2753,4 +2753,9 @@ public class ProjectServiceImpl extends BaseServiceImpl getByOriginId(String originId) { + return baseDao.selectByOriginId(originId); + } + } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java index 676b3bdc56..1e4a1b64b4 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java @@ -631,6 +631,10 @@ public class ProjectTraceServiceImpl implements ProjectTraceS if(null==resiEventEntity||resiEventEntity.getShiftProject()){ throw new RenException(EpmetErrorCode.RESI_EVENT_SHIFT_PROJECT.getCode(),EpmetErrorCode.RESI_EVENT_SHIFT_PROJECT.getMsg()); } + List projectEntityList = projectService.getByOriginId(formDTO.getEventId()); + if (!CollectionUtils.isEmpty(projectEntityList)) { + throw new RenException(EpmetErrorCode.RESI_EVENT_SHIFT_PROJECT.getCode(), EpmetErrorCode.RESI_EVENT_SHIFT_PROJECT.getMsg()); + } List staffList = formDTO.getStaffList(); //1.文字内容安全校验 List list = new ArrayList<>(); diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml index 7b0dac13a0..cb83792490 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml @@ -392,4 +392,9 @@ AND p.ID = #{projectId} + \ No newline at end of file From 5026801d49fcf6d391042f2c846e0b2153211f2d Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 6 Aug 2021 09:06:10 +0800 Subject: [PATCH 09/21] emm --- .../src/main/resources/mapper/CustomerStaffGridDao.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml index b1acb714b9..05277137da 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml @@ -107,7 +107,7 @@ SELECT sa.AGENCY_ID AS agencyId, sa.AGENCY_ID AS gridId, - ca.ORGANIZATION_NAME AS gridNamme + ca.ORGANIZATION_NAME AS gridName FROM customer_staff_agency sa LEFT JOIN customer_agency ca ON (ca.ID = sa.AGENCY_ID AND ca.DEL_FLAG = 0) WHERE sa.DEL_FLAG = 0 From 27ff8fd323666641031da13c6c5e3c9e7e2451d4 Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 6 Aug 2021 09:35:50 +0800 Subject: [PATCH 10/21] - --- .../main/java/com/epmet/dto/form/TestFormDTO.java | 14 -------------- .../main/java/com/epmet/feign/OssFeignClient.java | 9 ++------- .../feign/fallback/OssFeignClientFallback.java | 8 +++----- .../java/com/epmet/controller/TestController.java | 8 +++----- 4 files changed, 8 insertions(+), 31 deletions(-) delete mode 100644 epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/form/TestFormDTO.java diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/form/TestFormDTO.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/form/TestFormDTO.java deleted file mode 100644 index c78ca8d074..0000000000 --- a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/form/TestFormDTO.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.epmet.dto.form; - -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class TestFormDTO { - - private Long sleepPeriod; - -} diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java index 98142da53a..efabecb484 100644 --- a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java +++ b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/OssFeignClient.java @@ -10,9 +10,7 @@ package com.epmet.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.TestFormDTO; import com.epmet.dto.result.UploadImgResultDTO; -import com.epmet.feign.fallback.OssFeignClientFallback; import com.epmet.feign.fallback.OssFeignClientFallbackFactory; import feign.codec.Encoder; import feign.form.spring.SpringFormEncoder; @@ -20,13 +18,10 @@ import org.springframework.cloud.openfeign.FeignClient; import org.springframework.context.annotation.Bean; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestPart; import org.springframework.web.multipart.MultipartFile; -import java.net.UnknownHostException; - /** * OSS * @@ -74,7 +69,7 @@ public interface OssFeignClient { * @author wxz * @date 2021.08.05 16:28 */ - @PostMapping("/oss/test/test-ribbon-rcv") - Result testRibbonRcv(@RequestBody TestFormDTO input); + @PostMapping("/oss/test/test-ribbon-rcv/{sleep}") + Result testRibbonRcv(@RequestParam("sleep") Long sleep); } diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java index f5e51ee96c..06b01a6e76 100644 --- a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java +++ b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/feign/fallback/OssFeignClientFallback.java @@ -11,11 +11,9 @@ package com.epmet.feign.fallback; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.TestFormDTO; import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.feign.OssFeignClient; -import org.springframework.stereotype.Component; -import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.multipart.MultipartFile; /** @@ -43,8 +41,8 @@ public class OssFeignClientFallback implements OssFeignClient { } @Override - public Result testRibbonRcv(@RequestBody TestFormDTO input) { - return ModuleUtils.feignConError(ServiceConstant.EPMET_OSS_SERVER, "testRibbonRcv", null); + public Result testRibbonRcv(@PathVariable Long sleep) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_OSS_SERVER, "testRibbonRcv", sleep); } } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java index a1ebfe9f7b..ab580e8bf0 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/TestController.java @@ -1,8 +1,6 @@ package com.epmet.controller; import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.TestFormDTO; -import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.service.OssService; import org.apache.commons.io.FileUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -54,11 +52,11 @@ public class TestController { * @author wxz * @date 2021.08.05 16:28 */ - @PostMapping("test-ribbon-rcv") - public Result testRibbonRcv(@RequestBody TestFormDTO input) { + @PostMapping("test-ribbon-rcv/{sleep}") + public Result testRibbonRcv(@PathVariable("sleep") Long sleep) { InetAddress localHost = null; try { - Thread.sleep(input.getSleepPeriod()); + Thread.sleep(sleep); localHost = Inet4Address.getLocalHost(); } catch (UnknownHostException e) { e.printStackTrace(); From 810972aae1f76783c6dfa0a6b3cb437a339b4807 Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 6 Aug 2021 09:48:26 +0800 Subject: [PATCH 11/21] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/commons/tools/utils/DateUtils.java | 143 ++++++++++++++++-- .../dto/datastats/form/BaseDataFormDTO.java | 34 +++++ .../datastats/result/WorkFactResultDTO.java | 24 +++ .../controller/pub/PubController.java | 25 ++- .../service/datastats/DataStatsService.java | 3 +- .../datastats/impl/DataStatsServiceImpl.java | 39 ++++- 6 files changed, 251 insertions(+), 17 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/BaseDataFormDTO.java create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/WorkFactResultDTO.java diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java index c2988b67f9..6ce1d2a810 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java @@ -664,15 +664,6 @@ public class DateUtils { return result; } - public static void main(String[] args) { - Date today=new Date(); - Date yesterDay=DateUtils.parse("2020-07-28 15:33:00","yyyy-MM-dd HH:mm:ss"); - Date tomorrow=DateUtils.parse("2020-07-30 15:33:00","yyyy-MM-dd HH:mm:ss"); - System.out.println(comparteDate(today,today)); - System.out.println(comparteDate(yesterDay,today)); - System.out.println(comparteDate(tomorrow,today)); - } - public static String getYearId(String monthId) { if (StringUtils.isNotBlank(monthId) && monthId.length() > 4) { return monthId.substring(NumConstant.ZERO, NumConstant.FOUR); @@ -874,4 +865,138 @@ public class DateUtils { return DateUtils.format(date,dateType); } + /** + * 获取指定日期的 所在周的第一天和和最后一天 + * @param dataStr + * @return + * @throws ParseException + */ + public static String getLastOfWeek(String dataStr) throws ParseException { + Calendar cal = Calendar.getInstance(); + if (StringUtils.isNotBlank(dataStr)){ + cal.setTime(new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).parse(dataStr)); + } + + int d = 0; + if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { + d = -6; + } else { + d = 2 - cal.get(Calendar.DAY_OF_WEEK); + } + cal.add(Calendar.DAY_OF_WEEK, d); + // 所在周开始日期 + String data1 = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).format(cal.getTime()); + cal.add(Calendar.DAY_OF_WEEK, 6); + // 所在周结束日期 + String data2 = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).format(cal.getTime()); + return data1 + "-" + data2; + + } + + /** + * 获取指定日期的 所在周的第一天和和最后一天 + * @param dataStr + * @return + * @throws ParseException + */ + public static String getFirstOfWeek(String dataStr) throws ParseException { + Calendar cal = Calendar.getInstance(); + if (StringUtils.isNotBlank(dataStr)){ + cal.setTime(new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).parse(dataStr)); + } + + int d = 0; + if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { + d = -6; + } else { + d = 2 - cal.get(Calendar.DAY_OF_WEEK); + } + cal.add(Calendar.DAY_OF_WEEK, d); + // 所在周开始日期 + String data1 = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).format(cal.getTime()); + cal.add(Calendar.DAY_OF_WEEK, 6); + // 所在周结束日期 + String data2 = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).format(cal.getTime()); + return data1 + "-" + data2; + + } + + + /** + * 获取本周的第一天 + * @return String + * **/ + public static String getWeekStart(String dateId){ + Calendar cal=Calendar.getInstance(); + if (StringUtils.isNotBlank(dateId)){ + cal.setTime(DateUtils.parseDate(dateId,DateUtils.DATE_PATTERN_YYYYMMDD)); + } + int d = 0; + if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { + d = -6; + } else { + d = 2 - cal.get(Calendar.DAY_OF_WEEK); + } + cal.add(Calendar.DAY_OF_WEEK, d); + Date time=cal.getTime(); + return new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).format(time); + } + /** + * 获取本周的最后一天 + * @return String + * **/ + public static String getWeekEnd(String dateId){ + Calendar cal=Calendar.getInstance(); + if (StringUtils.isNotBlank(dateId)){ + cal.setTime(DateUtils.parseDate(dateId,DateUtils.DATE_PATTERN_YYYYMMDD)); + } + int d = 0; + if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { + d = -6; + } else { + d = 2 - cal.get(Calendar.DAY_OF_WEEK); + } + cal.add(Calendar.DAY_OF_WEEK, d); + cal.add(Calendar.DAY_OF_WEEK, 6); + Date time=cal.getTime(); + return new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).format(time); + } + + /** + * 获取本月开始日期 + * @return String + * **/ + public static String getMonthStart(){ + Calendar cal=Calendar.getInstance(); + cal.add(Calendar.MONTH, 0); + cal.set(Calendar.DAY_OF_MONTH, 1); + Date time=cal.getTime(); + return new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMM).format(time); + } + /** + * 获取本月最后一天 + * @return String + * **/ + public static String getMonthEnd(){ + Calendar cal=Calendar.getInstance(); + cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH)); + Date time=cal.getTime(); + return new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMM).format(time); + } + + public static void main(String[] args) throws ParseException { + String first = DateUtils.getFirstOfWeek("20210801"); + System.out.println(first); + String fLastOfWeek = DateUtils.getLastOfWeek("20210801"); + System.out.println(fLastOfWeek); + + System.out.println(DateUtils.getWeekStart("20210801")); + System.out.println(DateUtils.getWeekEnd("20210801")); + + Date dateIdDate = DateUtils.parse("20210801", DateUtils.DATE_PATTERN_YYYYMMDD); + String format = DateUtils.format(DateUtils.getMonthStart(dateIdDate), DateUtils.DATE_PATTERN_YYYYMMDD); + System.out.println(format); + format = DateUtils.format(DateUtils.getMonthEnd(dateIdDate), DateUtils.DATE_PATTERN_YYYYMMDD); + System.out.println(format); + } } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/BaseDataFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/BaseDataFormDTO.java new file mode 100644 index 0000000000..d2513cf19d --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/BaseDataFormDTO.java @@ -0,0 +1,34 @@ +package com.epmet.dataaggre.dto.datastats.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 BaseDataFormDTO implements Serializable { + + private static final long serialVersionUID = 6766797386944333123L; + /** + * 组织Id + */ + @NotBlank(message = "组织ID不能为空",groups = {BaseDataFormDTO.BaseData.class,BaseDataFormDTO.WorkFact.class}) + private String agencyId; + @NotBlank(message = "组织级别不能为空",groups = BaseDataFormDTO.WorkFact.class) + private String agencyLevel; + private String type; + /** + * 日维度Id + */ + private String dateId; + private String startDateId; + private String endDateId; + public interface BaseData extends CustomerClientShowGroup{} + public interface WorkFact extends CustomerClientShowGroup{} + +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/WorkFactResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/WorkFactResultDTO.java new file mode 100644 index 0000000000..01d72bb538 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/WorkFactResultDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dataaggre.dto.datastats.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * desc: + * + * @author: LiuJanJun + * @date: 2021/8/5 4:51 下午 + * @version: 1.0 + */ +@Data +public class WorkFactResultDTO implements Serializable { + private static final long serialVersionUID = -8149310637601355664L; + private double topicToIssueTotal; + private double issueToProjectTotal; + private double closedProjectTotal; + private double patrolTotal; + private String patrolTotalTime; + private String orgId; + private String orgName; +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java index 60bb5474c8..f78ac2226c 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java @@ -2,9 +2,9 @@ package com.epmet.dataaggre.controller.pub; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.dataaggre.dto.app.form.AppFootBarFormDTO; -import com.epmet.dataaggre.dto.datastats.form.AgenctBasicDataFormDTO; +import com.epmet.dataaggre.dto.datastats.form.BaseDataFormDTO; import com.epmet.dataaggre.dto.datastats.result.BaseStatsDataResultDTO; +import com.epmet.dataaggre.dto.datastats.result.WorkFactResultDTO; import com.epmet.dataaggre.service.datastats.DataStatsService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -33,9 +33,22 @@ public class PubController { * @date 2021/7/27 18:59 */ @PostMapping("baseDataAgg") - public Result getBaseStatsData(@RequestBody AgenctBasicDataFormDTO formDTO){ - ValidatorUtils.validateEntity(formDTO,AppFootBarFormDTO.AddUserInternalGroup.class); - BaseStatsDataResultDTO resultDTO=dataStatsService.getBaseStatsData(formDTO); - return new Result().ok(resultDTO); + public Result getBaseStatsData(@RequestBody BaseDataFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO,BaseDataFormDTO.BaseData.class); + return new Result().ok(dataStatsService.getBaseStatsData(formDTO)); + } + + /** + * 查询下级工作实况 + * + * @param formDTO + * @return com.epmet.dataaggre.dto.app.result.AppFootBarResultDTO + * @author yinzuomei + * @date 2021/7/27 18:59 + */ + @PostMapping("subWorkFact") + public Result getSubWorkFact(@RequestBody BaseDataFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO,BaseDataFormDTO.WorkFact.class); + return new Result().ok(dataStatsService.getSubWorkFact(formDTO)); } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java index 2fb47aab0d..e7d15e95f5 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java @@ -182,6 +182,7 @@ public interface DataStatsService { */ GridMemberDataAnalysisResultDTO getGridMemberIssueProjectStats(String staffId); - BaseStatsDataResultDTO getBaseStatsData(AgenctBasicDataFormDTO formDTO); + BaseStatsDataResultDTO getBaseStatsData(BaseDataFormDTO formDTO); + WorkFactResultDTO getSubWorkFact(BaseDataFormDTO formDTO); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java index 32848cc717..5699c0d8fd 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java @@ -1427,7 +1427,7 @@ public class DataStatsServiceImpl implements DataStatsService { } @Override - public BaseStatsDataResultDTO getBaseStatsData(AgenctBasicDataFormDTO formDTO) { + public BaseStatsDataResultDTO getBaseStatsData(BaseDataFormDTO formDTO) { //入参有日期的则按具体时间执行,没有的则按当前时间前一天执行 if (StringUtils.isBlank(formDTO.getDateId())) { Date yesterday = DateUtils.addDateDays(new Date(), -1); @@ -1468,6 +1468,43 @@ public class DataStatsServiceImpl implements DataStatsService { return result; } + @Override + public WorkFactResultDTO getSubWorkFact(BaseDataFormDTO formDTO) { + //入参有日期的则按具体时间执行,没有的则按当前时间前一天执行 + if (StringUtils.isBlank(formDTO.getType())){ + formDTO.setType("yesterday"); + } + if (StringUtils.isBlank(formDTO.getDateId())) { + Date yesterday = DateUtils.addDateDays(new Date(), -1); + SimpleDateFormat format = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD); + formDTO.setDateId(format.format(yesterday)); + } + String startDate,endDate; + Date dateIdDate = DateUtils.parse(formDTO.getDateId(), DateUtils.DATE_PATTERN_YYYYMMDD); + boolean isYesterday = DateUtils.getBeforeNDay(1,DateUtils.DATE_PATTERN_YYYYMMDD).equals(formDTO.getDateId()); + switch (formDTO.getType()){ + case "yesterday": + startDate = DateUtils.getBeforeNDay(NumConstant.ONE); + endDate = startDate; + break; + case "thisWeek": + startDate = DateUtils.getWeekStart(formDTO.getDateId()); + if (!isYesterday){ + endDate = DateUtils.getWeekEnd(formDTO.getDateId()); + } + break; + case "thisMonth": + startDate = DateUtils.format(DateUtils.getMonthStart(dateIdDate),DateUtils.DATE_PATTERN_YYYYMMDD); + if (!isYesterday) { + endDate = DateUtils.format(DateUtils.getMonthEnd(dateIdDate), DateUtils.DATE_PATTERN_YYYYMMDD); + } + } + + + + return null; + } + private String getPercentage(Integer countInt, Integer totalInt) { if (NumConstant.ZERO == totalInt) { return "0%"; From d621ced475ecfa819aa0b21da92f1bd39be0ce7e Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 6 Aug 2021 09:49:16 +0800 Subject: [PATCH 12/21] =?UTF-8?q?=E6=98=AF=E5=90=A6=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E5=B7=B2=E8=A7=A3=E5=86=B3=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/ResiEventDao.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml index ec756161fa..6b0faf49c0 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml @@ -120,7 +120,7 @@ IFNULL(re.EVENT_CONTENT,'') AS eventContent, IFNULL(re.ADDRESS,'') AS eventAddress, (CASE WHEN re.`STATUS` = 'processing' THEN FALSE WHEN re.`STATUS` = 'closed_case' THEN TRUE ELSE FALSE END) AS isClosed, - (IF('' = re.RESOLVE_STATUS OR NULL = re.RESOLVE_STATUS, TRUE, FALSE)) AS isResolve, + (IF(IFNULL(re.RESOLVE_STATUS,TRUE) OR '' = re.RESOLVE_STATUS, TRUE, FALSE)) AS isResolve, (CASE WHEN re.READ_FLAG = 1 THEN FALSE ELSE TRUE END) AS isRollback, (CASE WHEN re.SHIFT_PROJECT = 1 THEN TRUE ELSE FALSE END) AS isProject, IFNULL(re.project_id,'') AS projectId, From 959a5782928ed1b3d0710857e2722bb9ef24eb13 Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 6 Aug 2021 10:04:13 +0800 Subject: [PATCH 13/21] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/commons/tools/utils/DateUtils.java | 21 ------------------- 1 file changed, 21 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java index 6ce1d2a810..02b07ed286 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java @@ -962,27 +962,6 @@ public class DateUtils { return new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD).format(time); } - /** - * 获取本月开始日期 - * @return String - * **/ - public static String getMonthStart(){ - Calendar cal=Calendar.getInstance(); - cal.add(Calendar.MONTH, 0); - cal.set(Calendar.DAY_OF_MONTH, 1); - Date time=cal.getTime(); - return new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMM).format(time); - } - /** - * 获取本月最后一天 - * @return String - * **/ - public static String getMonthEnd(){ - Calendar cal=Calendar.getInstance(); - cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH)); - Date time=cal.getTime(); - return new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMM).format(time); - } public static void main(String[] args) throws ParseException { String first = DateUtils.getFirstOfWeek("20210801"); From 3386fbe9a188b27138f5b11526b5aad5bad06928 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 6 Aug 2021 10:08:07 +0800 Subject: [PATCH 14/21] emm --- .../src/main/resources/mapper/CustomerStaffGridDao.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml index 05277137da..1d11a957b2 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerStaffGridDao.xml @@ -114,8 +114,8 @@ AND sa.USER_ID = #{userId} UNION ALL SELECT - sg.GRID_ID AS gridId, cg.PID AS agencyId, + sg.GRID_ID AS gridId, cg.GRID_NAME AS gridName FROM customer_staff_grid sg LEFT JOIN customer_grid cg ON (cg.ID = sg.GRID_ID AND cg.DEL_FLAG = 0) From a90e4cda800ac5764d4db4738efc6ddc54f84e4f Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Fri, 6 Aug 2021 10:15:25 +0800 Subject: [PATCH 15/21] =?UTF-8?q?=E5=AF=B9=E5=A4=96=E6=8E=A5=E5=8F=A3-?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E3=80=81=E8=AF=9D=E9=A2=98=E3=80=81=E5=B0=8F?= =?UTF-8?q?=E7=BB=84=E6=95=B0=E6=9F=A5=E8=AF=A2-=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/SubTopicAndGroupFormDTO.java | 33 +++++++++++++++++++ .../datastats/form/SubUserTotalFormDTO.java | 33 +++++++++++++++++++ .../result/SubTopicAndGroupResultDTO.java | 23 +++++++++++++ .../result/SubUserTotalResultDTO.java | 23 +++++++++++++ .../controller/pub/PubController.java | 29 ++++++++++++++++ .../service/datastats/DataStatsService.java | 14 ++++++++ .../datastats/impl/DataStatsServiceImpl.java | 33 +++++++++++++++++++ 7 files changed, 188 insertions(+) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubTopicAndGroupFormDTO.java create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubUserTotalFormDTO.java create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubTopicAndGroupResultDTO.java create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubUserTotalResultDTO.java diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubTopicAndGroupFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubTopicAndGroupFormDTO.java new file mode 100644 index 0000000000..f86c97fcfa --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubTopicAndGroupFormDTO.java @@ -0,0 +1,33 @@ +package com.epmet.dataaggre.dto.datastats.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 SubTopicAndGroupFormDTO implements Serializable { + + private static final long serialVersionUID = -3381286960911634231L; + /** + * 当前组织id;从组织树取 + */ + @NotBlank(message = "组织ID不能为空", groups = SubTopicAndGroupFormDTO.Agency.class) + private String agencyId; + /** + * 当前组织级别;从组织树取 + */ + @NotBlank(message = "组织级别不能为空", groups = SubTopicAndGroupFormDTO.Agency.class) + private String agencyLevel; + /** + * 日维度Id【yyyyMMdd eg:20210808,默认前一天】 + */ + private String dateId; + public interface Agency extends CustomerClientShowGroup{} + +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubUserTotalFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubUserTotalFormDTO.java new file mode 100644 index 0000000000..8538e067a1 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubUserTotalFormDTO.java @@ -0,0 +1,33 @@ +package com.epmet.dataaggre.dto.datastats.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 SubUserTotalFormDTO implements Serializable { + + private static final long serialVersionUID = -3381286960911634231L; + /** + * 当前组织id;从组织树取 + */ + @NotBlank(message = "组织ID不能为空", groups = SubUserTotalFormDTO.Agency.class) + private String agencyId; + /** + * 当前组织级别;从组织树取 + */ + @NotBlank(message = "组织级别不能为空", groups = SubUserTotalFormDTO.Agency.class) + private String agencyLevel; + /** + * 日维度Id【yyyyMMdd eg:20210808,默认前一天】 + */ + private String dateId; + public interface Agency extends CustomerClientShowGroup{} + +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubTopicAndGroupResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubTopicAndGroupResultDTO.java new file mode 100644 index 0000000000..9c965e88cc --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubTopicAndGroupResultDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dataaggre.dto.datastats.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 对外接口-查询下级话题和小组数-接口返参 + * @Auth sun + */ +@Data +public class SubTopicAndGroupResultDTO implements Serializable { + private static final long serialVersionUID = 466974582608407121L; + //组织或网格ID + private String orgId; + //组织或网格名称 + private String orgName = ""; + //问题解决总数 + private Integer userTotal = 0; + //党群自治占比 + private Integer partyMemberTotal = 0; + +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubUserTotalResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubUserTotalResultDTO.java new file mode 100644 index 0000000000..d14c6a2381 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubUserTotalResultDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dataaggre.dto.datastats.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 对外接口-查询下级用户党员数-接口返参 + * @Auth sun + */ +@Data +public class SubUserTotalResultDTO implements Serializable { + private static final long serialVersionUID = 466974582608407121L; + //组织或网格ID + private String orgId; + //组织或网格名称 + private String orgName = ""; + //问题解决总数 + private Integer userTotal = 0; + //党群自治占比 + private Integer partyMemberTotal = 0; + +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java index f78ac2226c..e3e783217c 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java @@ -3,7 +3,11 @@ package com.epmet.dataaggre.controller.pub; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dataaggre.dto.datastats.form.BaseDataFormDTO; +import com.epmet.dataaggre.dto.datastats.form.SubTopicAndGroupFormDTO; +import com.epmet.dataaggre.dto.datastats.form.SubUserTotalFormDTO; import com.epmet.dataaggre.dto.datastats.result.BaseStatsDataResultDTO; +import com.epmet.dataaggre.dto.datastats.result.SubTopicAndGroupResultDTO; +import com.epmet.dataaggre.dto.datastats.result.SubUserTotalResultDTO; import com.epmet.dataaggre.dto.datastats.result.WorkFactResultDTO; import com.epmet.dataaggre.service.datastats.DataStatsService; import org.springframework.beans.factory.annotation.Autowired; @@ -12,6 +16,8 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + /** * 小程序相关配置,可以放在这,目前只放了footbar * @@ -51,4 +57,27 @@ public class PubController { ValidatorUtils.validateEntity(formDTO,BaseDataFormDTO.WorkFact.class); return new Result().ok(dataStatsService.getSubWorkFact(formDTO)); } + + /** + * @Param formDTO + * @Description 对外接口--查询下级用户党员数 + * @author sun + */ + @PostMapping("subUserTotal") + public Result> subUserTotal(@RequestBody SubUserTotalFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, SubUserTotalFormDTO.Agency.class); + return new Result>().ok(dataStatsService.subUserTotal(formDTO)); + } + + /** + * @Param formDTO + * @Description 对外接口--查询下级话题和小组数 + * @author sun + */ + @PostMapping("subTopicAndGroup") + public Result> subTopicAndGroup(@RequestBody SubTopicAndGroupFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, SubTopicAndGroupFormDTO.Agency.class); + return new Result>().ok(dataStatsService.subTopicAndGroup(formDTO)); + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java index e7d15e95f5..1aadb44563 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java @@ -185,4 +185,18 @@ public interface DataStatsService { BaseStatsDataResultDTO getBaseStatsData(BaseDataFormDTO formDTO); WorkFactResultDTO getSubWorkFact(BaseDataFormDTO formDTO); + + /** + * @Param formDTO + * @Description 对外接口--查询下级用户党员数 + * @author sun + */ + List subUserTotal(SubUserTotalFormDTO formDTO); + + /** + * @Param formDTO + * @Description 对外接口--查询下级话题和小组数 + * @author sun + */ + List subTopicAndGroup(SubTopicAndGroupFormDTO formDTO); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java index 5699c0d8fd..9cd49ff145 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java @@ -1516,4 +1516,37 @@ public class DataStatsServiceImpl implements DataStatsService { return ratio.toString().concat("%"); } + /** + * @Param formDTO + * @Description 对外接口--查询下级用户党员数 + * @author sun + */ + @Override + public List subUserTotal(SubUserTotalFormDTO formDTO) { + List resultList = new ArrayList<>(); + //1.入参有日期的则按具体时间执行,没有的则按当前时间前一天执行 + if (StringUtils.isBlank(formDTO.getDateId())) { + Date yesterday = DateUtils.addDateDays(new Date(), -1); + SimpleDateFormat format = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD); + formDTO.setDateId(format.format(yesterday)); + } + + //2. + //3. + //4. + + + return null; + } + + /** + * @Param formDTO + * @Description 对外接口--查询下级话题和小组数 + * @author sun + */ + @Override + public List subTopicAndGroup(SubTopicAndGroupFormDTO formDTO) { + return null; + } + } From 5f0ee2d366ce44c0326bb1f60e6acc18584ad617 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 6 Aug 2021 10:23:16 +0800 Subject: [PATCH 16/21] =?UTF-8?q?=E6=97=B6=E9=97=B4=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gov-project-server/src/main/resources/mapper/ProjectDao.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml index cb83792490..f578035897 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml @@ -383,7 +383,7 @@ From 0453a08e8be0ee199538e64e25ab16b3ff212310 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 6 Aug 2021 13:28:32 +0800 Subject: [PATCH 18/21] =?UTF-8?q?=E6=97=B6=E9=97=B4=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/ResiEventDao.xml | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml index 6b0faf49c0..0c1808eae9 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml @@ -18,7 +18,15 @@ SELECT IFNULL(rea.ATTACHMENT_URL,'') AS img,t.* FROM (SELECT re.EVENT_CONTENT AS eventContent, - IFNULL(DATE_FORMAT(re.CREATED_TIME,'%Y-%m-%d %H:%i'),'') AS eventTime, + + IFNULL(DATE_FORMAT(re.CREATED_TIME,'%Y-%m-%d %H:%i'),'') AS eventTime, + + + IFNULL(DATE_FORMAT(re.LATEST_OPERATED_TIME,'%Y-%m-%d %H:%i'),'') AS eventTime, + + + IFNULL(DATE_FORMAT(re.CLOSE_CASE_TIME,'%Y-%m-%d %H:%i'),'') AS eventTime, + re.ID AS eventId, (CASE WHEN re.SHIFT_PROJECT = 1 THEN TRUE ELSE FALSE END) AS isProject, (CASE WHEN ro.RED_DOT = 1 THEN TRUE ELSE FALSE END) AS redDot @@ -33,12 +41,12 @@ AND ro.ORG_READ = 'read' AND re.`STATUS` = 'processing' - ORDER BY re.LATEST_OPERATED_TIME + ORDER BY re.LATEST_OPERATED_TIME DESC AND ro.ORG_READ = 'read' AND re.`STATUS` = 'closed_case' - ORDER BY re.CLOSE_CASE_TIME + ORDER BY re.CLOSE_CASE_TIME DESC )t LEFT JOIN resi_event_attachment rea ON (rea.RESI_EVENT_ID = t.eventId AND rea.DEL_FLAG = '0' AND rea.ATTACHMENT_TYPE = 'image' AND (rea.SORT = 0 OR rea.SORT = 1 OR rea.SORT = 2)) From 107b50dc23f48dc4e1d4b3c14f3cbd1c67cc6eaa Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 6 Aug 2021 14:09:48 +0800 Subject: [PATCH 19/21] =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E5=8F=B0=E7=BE=A4?= =?UTF-8?q?=E4=BC=97=E7=9B=B4=E6=8A=A5=E7=BA=A2=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/form/RedDotFormDTO.java | 5 ++++ .../WorkGrassRootsFunctionConstant.java | 5 +++- .../epmet/service/impl/RemindServiceImpl.java | 20 +++++++++---- .../dto/result/ResiEventManageRedDotRes.java | 30 +++++++++++++++++++ .../feign/GovProjectOpenFeignClient.java | 12 +++++++- .../GovProjectOpenFeignClientFallback.java | 13 ++++++++ .../epmet/controller/ResiEventController.java | 19 +++++++++--- .../com/epmet/dao/ResiEventReportOrgDao.java | 4 +++ .../com/epmet/service/ResiEventService.java | 10 +++++++ .../service/impl/ResiEventServiceImpl.java | 17 +++++++++++ .../mapper/ResiEventReportOrgDao.xml | 23 ++++++++++++++ 11 files changed, 147 insertions(+), 11 deletions(-) create mode 100644 epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ResiEventManageRedDotRes.java diff --git a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/RedDotFormDTO.java b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/RedDotFormDTO.java index be67ff5a33..aa4906e7ee 100644 --- a/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/RedDotFormDTO.java +++ b/epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/form/RedDotFormDTO.java @@ -25,5 +25,10 @@ public class RedDotFormDTO implements Serializable { */ //@NotBlank(message = "网格id不能为空") private String gridId; + + /** + * 当前工作人员所属的组织id + */ + private String agencyId; } diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java index 772990f98d..fb077deb46 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java @@ -32,6 +32,9 @@ public class WorkGrassRootsFunctionConstant { */ public static final String WORK_GRASSROOTS_BADGE="work_grassroots_badge"; - + /** + * 基层治理-群众直报 功能入口 + */ + public static final String RESI_EVENT_MANAGE="resi_event_manage"; } diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java index a2916ee01c..bb57c4f241 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java @@ -44,6 +44,8 @@ public class RemindServiceImpl implements RemindService { @Autowired private EpmetUserOpenFeignClient epmetUserOpenFeignClient; + @Autowired + private GovProjectOpenFeignClient govProjectOpenFeignClient; @Override public RedDotResultDTO queryGridRedDot(RedDotFormDTO formDTO) { @@ -217,12 +219,11 @@ public class RemindServiceImpl implements RemindService { RedDotResultDTO redDotResultDTO = new RedDotResultDTO(); redDotResultDTO.setOtherGridRedDot(false); redDotResultDTO.setFunctionList(Collections.EMPTY_LIST); - + List functionList = new ArrayList<>(); + List details = new ArrayList<>(); Result> govOrgResult = govOrgFeignClient.getMyGrids(formDTO.getStaffId()); if (govOrgResult.success() && !CollectionUtils.isEmpty(govOrgResult.getData())) { - List functionList = new ArrayList<>(); - List details = new ArrayList<>(); List gridIdList = govOrgResult.getData().stream().map(CustomerGridByUserIdResultDTO::getGridId).collect(Collectors.toList()); //1、群组管理(待审核的小组申请、变更小组申请) @@ -335,11 +336,20 @@ public class RemindServiceImpl implements RemindService { } }); } - redDotResultDTO.setFunctionList(functionList); - redDotResultDTO.setDetails(details); } else { logger.warn(String.format("基层治理红点查询,获取工作人员所属网格失败,当前staffId=%s", formDTO.getStaffId())); } + + // 群众直报:当前工作人员所属的组织存在待处理(未读的)、有新的回复的(相当于处理中有红点的)记录就显示红点 + if(org.apache.commons.lang3.StringUtils.isNotBlank(formDTO.getAgencyId())){ + Result projectRes=govProjectOpenFeignClient.queryResiEventManageRedDot(formDTO.getAgencyId()); + if(projectRes.success()&&null !=projectRes.getData()&&projectRes.getData().getTotalCount()>0){ + functionList.add(WorkGrassRootsFunctionConstant.RESI_EVENT_MANAGE); + details.add(new RedDotDetialDTO(WorkGrassRootsFunctionConstant.RESI_EVENT_MANAGE, projectRes.getData().getTotalCount().longValue())); + } + } + redDotResultDTO.setFunctionList(functionList); + redDotResultDTO.setDetails(details); return redDotResultDTO; } diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ResiEventManageRedDotRes.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ResiEventManageRedDotRes.java new file mode 100644 index 0000000000..87af6124be --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ResiEventManageRedDotRes.java @@ -0,0 +1,30 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 描述一下 + * + * @author yinzuomei@elink-cn.com + * @date 2021/8/6 13:54 + */ +@Data +public class ResiEventManageRedDotRes implements Serializable { + /** + * 待处理(未读)的事件数 + * */ + private Integer unReadCount; + + /** + * 已经度过,但是又有新的回复、立项、结案 + * */ + private Integer redDotCount; + + /** + * 总数 + * */ + private Integer totalCount; + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java index 7b0c1a7bd9..7824ba71ee 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java @@ -6,7 +6,6 @@ import com.epmet.dto.ProjectCategoryDTO; import com.epmet.dto.ProjectDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.*; -import com.epmet.feign.fallback.GovProjectOpenFeignClientFallback; import com.epmet.feign.fallback.GovProjectOpenFeignClientFallbackFactory; import com.epmet.resi.mine.dto.from.MyPartProjectsFormDTO; import org.springframework.cloud.openfeign.FeignClient; @@ -124,4 +123,15 @@ public interface GovProjectOpenFeignClient { */ @PostMapping("gov/project/project/unresolvedlist") Result> getUnResolvedList(@RequestBody ShiftProjectListFromDTO formDTO); + + /** + * 群众直报:当前工作人员所属的组织存在待处理(未读的)、有新的回复的(相当于处理中有红点的)记录就显示红点 + * + * @param agencyId + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @date 2021/8/6 14:07 + */ + @PostMapping("gov/project/resievent/queryResiEventManageRedDot/{agencyId}") + Result queryResiEventManageRedDot(@PathVariable("agencyId") String agencyId); } diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/fallback/GovProjectOpenFeignClientFallback.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/fallback/GovProjectOpenFeignClientFallback.java index 44ea0d1e63..41f41664c1 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/fallback/GovProjectOpenFeignClientFallback.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/fallback/GovProjectOpenFeignClientFallback.java @@ -119,4 +119,17 @@ public class GovProjectOpenFeignClientFallback implements GovProjectOpenFeignCli public Result> getUnResolvedList(ShiftProjectListFromDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "getUnResolvedList", formDTO); } + + /** + * 群众直报:当前工作人员所属的组织存在待处理(未读的)、有新的回复的(相当于处理中有红点的)记录就显示红点 + * + * @param agencyId + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @date 2021/8/6 14:08 + */ + @Override + public Result queryResiEventManageRedDot(String agencyId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "queryResiEventManageRedDot", agencyId); + } } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java index d984456930..1b69e0b039 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java @@ -26,10 +26,7 @@ import com.epmet.dto.form.*; import com.epmet.dto.result.*; import com.epmet.service.ResiEventService; 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.List; @@ -202,4 +199,18 @@ public class ResiEventController { resiEventService.closeResiEvent(formDTO); return new Result(); } + + + /** + * 工作台,最新直报是否显示红点? + * + * @param agencyId + * @return com.epmet.commons.tools.utils.Result + * @author yinzuomei + * @date 2021/8/6 13:57 + */ + @PostMapping("queryResiEventManageRedDot/{agencyId}") + Result queryResiEventManageRedDot(@PathVariable("agencyId") String agencyId) { + return new Result().ok(resiEventService.queryResiEventManageRedDot(agencyId)); + } } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java index 6f851d34c3..0668eb78f7 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java @@ -60,4 +60,8 @@ public interface ResiEventReportOrgDao extends BaseDao * @date 2021/8/4 17:41 */ int updateRedDotShow(String resiEventId); + + Integer selectUnReadCount(String agencyId); + + Integer selectRedCount(String agencyId); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java index 6822dfe4fa..38d4916acc 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java @@ -119,4 +119,14 @@ public interface ResiEventService extends BaseService { void shiftProject(EventShiftProjectDTO eventShiftProjectDTO); ResiEventEntity getById(String eventId); + + /** + * 工作台,最新直报是否显示红点? + * + * @param agencyId + * @return com.epmet.dto.result.ResiEventManageRedDotRes + * @author yinzuomei + * @date 2021/8/6 13:57 + */ + ResiEventManageRedDotRes queryResiEventManageRedDot(String agencyId); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index bc013eb0fc..e7c1376f40 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -620,5 +620,22 @@ public class ResiEventServiceImpl extends BaseServiceImpl + + + + \ No newline at end of file From e8131f1a33a66ac8f419b8dfe2c10041e0468c57 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Fri, 6 Aug 2021 14:32:03 +0800 Subject: [PATCH 20/21] =?UTF-8?q?=E5=AF=B9=E5=A4=96=E6=8E=A5=E5=8F=A3-?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E3=80=81=E8=AF=9D=E9=A2=98=E3=80=81=E5=B0=8F?= =?UTF-8?q?=E7=BB=84=E6=95=B0=E6=9F=A5=E8=AF=A2-=E7=AC=AC=E4=B8=80?= =?UTF-8?q?=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/SubTopicAndGroupFormDTO.java | 5 + .../datastats/form/SubUserTotalFormDTO.java | 5 + .../result/SubTopicAndGroupResultDTO.java | 8 +- .../result/SubUserTotalResultDTO.java | 4 +- .../datastats/impl/DataStatsServiceImpl.java | 143 +++++++++++++++++- 5 files changed, 154 insertions(+), 11 deletions(-) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubTopicAndGroupFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubTopicAndGroupFormDTO.java index f86c97fcfa..7a64b567d7 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubTopicAndGroupFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubTopicAndGroupFormDTO.java @@ -21,6 +21,11 @@ public class SubTopicAndGroupFormDTO implements Serializable { private String agencyId; /** * 当前组织级别;从组织树取 + * 机关级别(社区级:community, + * 乡(镇、街道)级:street, + * 区县级: district, + * 市级: city + * 省级:province) */ @NotBlank(message = "组织级别不能为空", groups = SubTopicAndGroupFormDTO.Agency.class) private String agencyLevel; diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubUserTotalFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubUserTotalFormDTO.java index 8538e067a1..f97af0583e 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubUserTotalFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/SubUserTotalFormDTO.java @@ -21,6 +21,11 @@ public class SubUserTotalFormDTO implements Serializable { private String agencyId; /** * 当前组织级别;从组织树取 + * 机关级别(社区级:community, + * 乡(镇、街道)级:street, + * 区县级: district, + * 市级: city + * 省级:province) */ @NotBlank(message = "组织级别不能为空", groups = SubUserTotalFormDTO.Agency.class) private String agencyLevel; diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubTopicAndGroupResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubTopicAndGroupResultDTO.java index 9c965e88cc..0b76a3d2a1 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubTopicAndGroupResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubTopicAndGroupResultDTO.java @@ -15,9 +15,9 @@ public class SubTopicAndGroupResultDTO implements Serializable { private String orgId; //组织或网格名称 private String orgName = ""; - //问题解决总数 - private Integer userTotal = 0; - //党群自治占比 - private Integer partyMemberTotal = 0; + //话题总数 + private Integer topicTotal = 0; + //小组总数 + private Integer groupTotal = 0; } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubUserTotalResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubUserTotalResultDTO.java index d14c6a2381..2f87e63143 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubUserTotalResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/SubUserTotalResultDTO.java @@ -15,9 +15,9 @@ public class SubUserTotalResultDTO implements Serializable { private String orgId; //组织或网格名称 private String orgName = ""; - //问题解决总数 + //用户总数 private Integer userTotal = 0; - //党群自治占比 + //党员总数 private Integer partyMemberTotal = 0; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java index 9cd49ff145..1fd450840d 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java @@ -1531,12 +1531,66 @@ public class DataStatsServiceImpl implements DataStatsService { formDTO.setDateId(format.format(yesterday)); } - //2. - //3. - //4. + //根据组织级别判断查询直属下级组织或网格数据 + //2.直属网格 + if ("community".equals(formDTO.getAgencyLevel())) { + //2-1.查询组织直属网格列表【网格维度】 + List gridList = indexService.getSubGridList(formDTO.getAgencyId()); + if (gridList.size() < NumConstant.ONE) { + return resultList; + } + List gridIds = gridList.stream().map(ScreenCustomerGridDTO::getGridId).collect(Collectors.toList()); + //2-2.查询网格下用户、党员日统计数据,按用户总数降序 + List list = dataStatsDao.getSubGridUser(gridIds, formDTO.getDateId()); + //2-3.封装数据 + gridList.forEach(gr -> { + SubUserTotalResultDTO dto = new SubUserTotalResultDTO(); + dto.setOrgId(gr.getGridId()); + dto.setOrgName(gr.getGridName()); + list.forEach(re -> { + if (gr.getGridId().equals(re.getGridId())) { + dto.setUserTotal(re.getUserTotal()); + dto.setPartyMemberTotal(re.getPartyMemberTotal()); + } + }); + resultList.add(dto); + }); + } else { + //3.直属组织 + //3-1.查询直属下级组织列表,有子客户的按areaCode查没有的按agencyId查 + List subAgencyList = indexService.getSubAgencyListByAgency(formDTO.getAgencyId()); + if (subAgencyList.size() < NumConstant.ONE) { + return resultList; + } + List agencyIds = subAgencyList.stream().map(ScreenCustomerAgencyDTO::getAgencyId).collect(Collectors.toList()); + //3-2.查询组织下用户、党员日统计数据,按用户总数降序 + List list = dataStatsDao.getSubAgencyUser(agencyIds, formDTO.getDateId()); + //3-3.封装数据 + subAgencyList.forEach(sub -> { + SubUserTotalResultDTO dto = new SubUserTotalResultDTO(); + dto.setOrgId(sub.getAgencyId()); + dto.setOrgName(sub.getAgencyName()); + list.forEach(u -> { + if (sub.getAgencyId().equals(u.getAgencyId())) { + dto.setUserTotal(u.getUserTotal()); + dto.setPartyMemberTotal(u.getPartyMemberTotal()); + } + }); + resultList.add(dto); + }); + } - return null; + //4.按用户数降序排序并返回 + Collections.sort(resultList, new Comparator() { + @Override + public int compare(SubUserTotalResultDTO o1, SubUserTotalResultDTO o2) { + //降序 + return o2.getUserTotal().compareTo(o1.getUserTotal()); + } + }); + + return resultList; } /** @@ -1546,7 +1600,86 @@ public class DataStatsServiceImpl implements DataStatsService { */ @Override public List subTopicAndGroup(SubTopicAndGroupFormDTO formDTO) { - return null; + List resultList = new ArrayList<>(); + //1.入参有日期的则按具体时间执行,没有的则按当前时间前一天执行 + if (StringUtils.isBlank(formDTO.getDateId())) { + Date yesterday = DateUtils.addDateDays(new Date(), -1); + SimpleDateFormat format = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD); + formDTO.setDateId(format.format(yesterday)); + } + + //根据组织级别判断查询直属下级组织或网格数据 + //2.直属网格 + if ("community".equals(formDTO.getAgencyLevel())) { + //2-1.查询组织直属网格列表【网格维度】 + List gridList = indexService.getSubGridList(formDTO.getAgencyId()); + if (gridList.size() < NumConstant.ONE) { + return resultList; + } + List gridIds = gridList.stream().map(ScreenCustomerGridDTO::getGridId).collect(Collectors.toList()); + //2-2.查询网格下热议中话题日统计数据 + List hotdiscuss = dataStatsDao.getSubGridTopicHotDiscuss(gridIds, formDTO.getDateId()); + //2-2.查询网格层级小组日统计数据 + List list = dataStatsDao.getSubGridGroup(gridIds, formDTO.getDateId()); + //2-3.封装数据 + gridList.forEach(gr -> { + SubTopicAndGroupResultDTO resultDTO = new SubTopicAndGroupResultDTO(); + resultDTO.setOrgId(gr.getGridId()); + resultDTO.setOrgName(gr.getGridName()); + hotdiscuss.forEach(t -> { + if (t.getGridId().equals(gr.getGridId())) { + resultDTO.setTopicTotal(t.getTopicTotal()); + } + }); + list.forEach(l -> { + if (l.getGridId().equals(gr.getGridId())) { + resultDTO.setGroupTotal(l.getGroupTotal()); + } + }); + resultList.add(resultDTO); + }); + + } else { + //3.直属组织 + //3-1.查询直属下级组织列表,有子客户的按areaCode查没有的按agencyId查 + List subAgencyList = indexService.getSubAgencyListByAgency(formDTO.getAgencyId()); + if (subAgencyList.size() < NumConstant.ONE) { + return resultList; + } + List agencyIds = subAgencyList.stream().map(ScreenCustomerAgencyDTO::getAgencyId).collect(Collectors.toList()); + //3-2.查询组织下热议中话题日统计数据 + List hotdiscuss = dataStatsDao.getSubAgencyTopicHotDiscuss(agencyIds, formDTO.getDateId()); + //3-3.查询直属下级组织小组日统计数据 + List list = dataStatsDao.getSubAgencyGroup(agencyIds, formDTO.getDateId()); + //3-4.封装数据 + subAgencyList.forEach(sub -> { + SubTopicAndGroupResultDTO resultDTO = new SubTopicAndGroupResultDTO(); + resultDTO.setOrgId(sub.getAgencyId()); + resultDTO.setOrgName(sub.getAgencyName()); + hotdiscuss.forEach(t -> { + if (t.getAgencyId().equals(sub.getAgencyId())) { + resultDTO.setTopicTotal(t.getTopicTotal()); + } + }); + list.forEach(u -> { + if (sub.getAgencyId().equals(u.getAgencyId())) { + resultDTO.setGroupTotal(u.getGroupTotal()); + } + }); + resultList.add(resultDTO); + }); + } + + //4.按用户数降序排序并返回 + Collections.sort(resultList, new Comparator() { + @Override + public int compare(SubTopicAndGroupResultDTO o1, SubTopicAndGroupResultDTO o2) { + //降序 + return o2.getTopicTotal().compareTo(o1.getTopicTotal()); + } + }); + + return resultList; } } From 1a23c28557cded18091a4576ab6e5d747777d8ca Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 6 Aug 2021 15:07:29 +0800 Subject: [PATCH 21/21] =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E5=AE=9E=E5=86=B5?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/commons/tools/utils/DateUtils.java | 17 +++ .../result/BaseStatsDataResultDTO.java | 6 + .../result/TotalAndIncrResultDTO.java | 3 +- .../datastats/result/WorkFactResultDTO.java | 12 +- .../controller/pub/PubController.java | 4 +- .../dataaggre/dao/datastats/DataStatsDao.java | 8 ++ .../StatsStaffPatrolRecordDailyDao.java | 45 +++++++ .../StatsStaffPatrolRecordDailyEntity.java | 125 ++++++++++++++++++ .../service/datastats/DataStatsService.java | 12 +- .../datastats/impl/DataStatsServiceImpl.java | 83 +++++++++++- .../StatsStaffPatrolRecordDailyService.java | 42 ++++++ ...tatsStaffPatrolRecordDailyServiceImpl.java | 43 ++++++ .../mapper/datastats/DatsStatsDao.xml | 15 +++ .../StatsStaffPatrolRecordDailyDao.xml | 17 +++ 14 files changed, 416 insertions(+), 16 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StatsStaffPatrolRecordDailyDao.java create mode 100644 epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/epmetuser/StatsStaffPatrolRecordDailyEntity.java create mode 100644 epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/StatsStaffPatrolRecordDailyService.java create mode 100644 epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java create mode 100644 epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java index 02b07ed286..faaf5f2c3a 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java @@ -425,6 +425,23 @@ public class DateUtils { return DateUtils.format(date,DateUtils.DATE_PATTERN_YYYYMMDD); } + /** + * @return java.lang.String + * @param beforDay + * @author yinzuomei + * @description 获取当前日期的前n天 返回yyyyMMdd + * @Date 2020/6/23 1:50 + **/ + public static String getBeforeNDay(String dateId,int beforDay){ + Calendar c = Calendar.getInstance(); + if (StringUtils.isNotBlank(dateId)){ + c.setTime(DateUtils.parseDate(dateId,DateUtils.DATE_PATTERN_YYYYMMDD)); + } + c.add(Calendar.DATE, - beforDay); + Date date = c.getTime(); + return DateUtils.format(date,DateUtils.DATE_PATTERN_YYYYMMDD); + } + public static String getBeforeNDay(int beforDay,String format){ Calendar c = Calendar.getInstance(); c.add(Calendar.DATE, - beforDay); diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/BaseStatsDataResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/BaseStatsDataResultDTO.java index 1381870afa..8302d08e49 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/BaseStatsDataResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/BaseStatsDataResultDTO.java @@ -14,12 +14,18 @@ public class BaseStatsDataResultDTO implements Serializable { private Integer topicTotal; private Integer topicIncr; + // private Integer topicToIssueTotal; private Integer issueTotal; private Integer issueIncr; + // private Integer issueToProjectTotal; private Integer projectTotal; private Integer projectIncr; private Integer closedProjectTotal; private Integer closedProjectIncr; +// private Integer patrolTotal; +// private Integer patrolTotalTime; +// private Integer orgId; +// private Integer orgName; diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/TotalAndIncrResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/TotalAndIncrResultDTO.java index 59ce8a4aa1..02fee2c919 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/TotalAndIncrResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/TotalAndIncrResultDTO.java @@ -5,7 +5,7 @@ import lombok.Data; import java.io.Serializable; /** - * @Description 基础数据-组织各种数据汇总-接口返参 + * @Description 总数及增量 返回结果 * @Auth sun */ @Data @@ -16,4 +16,5 @@ public class TotalAndIncrResultDTO implements Serializable { private Integer incr; private Integer total2; private Integer incr2; + } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/WorkFactResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/WorkFactResultDTO.java index 01d72bb538..9eebe98854 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/WorkFactResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/WorkFactResultDTO.java @@ -14,11 +14,13 @@ import java.io.Serializable; @Data public class WorkFactResultDTO implements Serializable { private static final long serialVersionUID = -8149310637601355664L; - private double topicToIssueTotal; - private double issueToProjectTotal; - private double closedProjectTotal; - private double patrolTotal; - private String patrolTotalTime; + private Integer topicToIssueTotal = 0; + private Integer issueToProjectTotal = 0; + private Integer closedProjectTotal = 0; + private Integer patrolTotal = 0; + private String patrolTotalTime = "0"; private String orgId; private String orgName; + + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java index e3e783217c..964e5225d1 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java @@ -53,9 +53,9 @@ public class PubController { * @date 2021/7/27 18:59 */ @PostMapping("subWorkFact") - public Result getSubWorkFact(@RequestBody BaseDataFormDTO formDTO){ + public Result> getSubWorkFact(@RequestBody BaseDataFormDTO formDTO){ ValidatorUtils.validateEntity(formDTO,BaseDataFormDTO.WorkFact.class); - return new Result().ok(dataStatsService.getSubWorkFact(formDTO)); + return new Result>().ok(dataStatsService.getSubWorkFact(formDTO)); } /** diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java index 0ae15cd019..46f7e64cb6 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java @@ -273,4 +273,12 @@ public interface DataStatsDao { TotalAndIncrResultDTO getAgencySumIssue(@Param("agencyList") List agencyList, @Param("dateId") String dateId); TotalAndIncrResultDTO getAgencySumProject(@Param("agencyList") List agencyList, @Param("dateId") String dateId); + + /** + * 获取话题相关总数 + * @param agencyList + * @param dateId + * @return + */ + List getSubSumAgencyTopic(@Param("agencyList") List agencyList, @Param("dateId") String dateId); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StatsStaffPatrolRecordDailyDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StatsStaffPatrolRecordDailyDao.java new file mode 100644 index 0000000000..4d082fe5d9 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StatsStaffPatrolRecordDailyDao.java @@ -0,0 +1,45 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dataaggre.dao.epmetuser; + + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 工作人员巡查统计 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-06-07 + */ +@Mapper +public interface StatsStaffPatrolRecordDailyDao extends BaseDao { + + /** + * desc:获取巡查次数和时间 + * @param agencyList + * @param startDateId + * @param endDateId + * @return + */ + List getPatrolSumList(@Param("agencyList") List agencyList, @Param("startDateId") String startDateId, @Param("endDateId") String endDateId); +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/epmetuser/StatsStaffPatrolRecordDailyEntity.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/epmetuser/StatsStaffPatrolRecordDailyEntity.java new file mode 100644 index 0000000000..1c52ad1336 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/epmetuser/StatsStaffPatrolRecordDailyEntity.java @@ -0,0 +1,125 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dataaggre.entity.epmetuser; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * [天]工作人员巡查记录统计 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-06-29 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("stats_staff_patrol_record_daily") +public class StatsStaffPatrolRecordDailyEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 来源类型 external:外部,internal:内部 + */ + private String sourceType; + + /** + * 客户Id + */ + private String customerId; + + /** + * 数据来源客户Id + */ + private String sourceCustomerId; + + /** + * 统计日期 关联日期dim表 + */ + private String dateId; + + /** + * 周ID + */ + private String weekId; + + /** + * 月ID + */ + private String monthId; + + /** + * 季ID + */ + private String quarterId; + + /** + * 年ID + */ + private String yearId; + + /** + * 网格id + */ + private String gridId; + + /** + * 工作人员所属组织id=网格所属的组织id + */ + private String agencyId; + + /** + * 网格所有上级id + */ + private String gridPids; + + /** + * 工作人员用户id + */ + private String staffId; + + /** + * 巡查次数 + */ + private Integer patrolTotal; + + /** + * 巡查时长 单位:秒 + */ + private Integer totalTime; + + /** + * 巡查期间直接立项项目数 + */ + private Integer reportProjectCount; + + /** + * 最新的巡查开始时间 + */ + private Date latestPatrolTime; + + /** + * 最新的巡查状态 正在巡查中:patrolling;结束:end + */ + private String latestPatrolStatus; + +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java index 1aadb44563..621a336fb2 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java @@ -182,9 +182,19 @@ public interface DataStatsService { */ GridMemberDataAnalysisResultDTO getGridMemberIssueProjectStats(String staffId); + /** + * desc:获取话题 议题 项目 关闭项目数 + * @param formDTO + * @return + */ BaseStatsDataResultDTO getBaseStatsData(BaseDataFormDTO formDTO); - WorkFactResultDTO getSubWorkFact(BaseDataFormDTO formDTO); + /** + * 获取工作实况中的数 + * @param formDTO + * @return + */ + List getSubWorkFact(BaseDataFormDTO formDTO); /** * @Param formDTO diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java index 1fd450840d..7e76550402 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java @@ -1,7 +1,8 @@ package com.epmet.dataaggre.service.datastats.impl; -import com.epmet.commons.dynamic.datasource.annotation.DataSource; + import com.epmet.commons.dynamic.datasource.annotation.DataSource; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.enums.OrgLevelEnum; import com.epmet.commons.tools.utils.DateUtils; import com.epmet.dataaggre.constant.DataSourceConstant; import com.epmet.dataaggre.constant.OrgConstant; @@ -18,7 +19,9 @@ import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO; import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO; import com.epmet.dataaggre.entity.datastats.DimAgencyEntity; import com.epmet.dataaggre.entity.datastats.FactAgencyGovernDailyEntity; +import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; import com.epmet.dataaggre.service.datastats.DataStatsService; +import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService; import com.epmet.dataaggre.service.evaluationindex.EvaluationIndexService; import com.epmet.dataaggre.service.opercrm.CustomerRelation; import com.github.pagehelper.PageHelper; @@ -54,6 +57,8 @@ public class DataStatsServiceImpl implements DataStatsService { @Autowired private FactGridMemberStatisticsDailyDao factGridMemberStatisticsDailyDao; + @Autowired + private StatsStaffPatrolRecordDailyService statsStaffPatrolRecordDailyService; /** @@ -1469,40 +1474,104 @@ public class DataStatsServiceImpl implements DataStatsService { } @Override - public WorkFactResultDTO getSubWorkFact(BaseDataFormDTO formDTO) { + public List getSubWorkFact(BaseDataFormDTO formDTO) { //入参有日期的则按具体时间执行,没有的则按当前时间前一天执行 if (StringUtils.isBlank(formDTO.getType())){ formDTO.setType("yesterday"); } + Date yesterday = DateUtils.addDateDays(new Date(), -1); if (StringUtils.isBlank(formDTO.getDateId())) { - Date yesterday = DateUtils.addDateDays(new Date(), -1); SimpleDateFormat format = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD); formDTO.setDateId(format.format(yesterday)); } - String startDate,endDate; + String startDate = null; + String endDate = null; Date dateIdDate = DateUtils.parse(formDTO.getDateId(), DateUtils.DATE_PATTERN_YYYYMMDD); boolean isYesterday = DateUtils.getBeforeNDay(1,DateUtils.DATE_PATTERN_YYYYMMDD).equals(formDTO.getDateId()); switch (formDTO.getType()){ case "yesterday": - startDate = DateUtils.getBeforeNDay(NumConstant.ONE); - endDate = startDate; + startDate = DateUtils.getBeforeNDay(formDTO.getDateId(),1); + endDate = formDTO.getDateId(); break; case "thisWeek": startDate = DateUtils.getWeekStart(formDTO.getDateId()); + startDate = DateUtils.getBeforeNDay(startDate,1); + DateUtils.format(DateUtils.addDateDays(yesterday, -1),DateUtils.DATE_PATTERN_YYYYMMDD); if (!isYesterday){ endDate = DateUtils.getWeekEnd(formDTO.getDateId()); } break; case "thisMonth": startDate = DateUtils.format(DateUtils.getMonthStart(dateIdDate),DateUtils.DATE_PATTERN_YYYYMMDD); + startDate = DateUtils.getBeforeNDay(startDate,1); if (!isYesterday) { endDate = DateUtils.format(DateUtils.getMonthEnd(dateIdDate), DateUtils.DATE_PATTERN_YYYYMMDD); } + break; + default: + log.warn("==========="); } + formDTO.setStartDateId(startDate); + formDTO.setEndDateId(endDate); + List result = new ArrayList<>(); + //如果是社区 则下级是网格 查询网格的数据 + if (OrgLevelEnum.COMMUNITY.getCode().equals(formDTO.getAgencyLevel())){ + }else { + //0.根据组织Id查询是否存在子客户,存在的按areaCode查询当前客户之外的客户组织列表 + List subAgencyList = indexService.getSubAgencyListByAgency(formDTO.getAgencyId()); + if (subAgencyList.size() < NumConstant.ONE) { + return null; + } + + List agencyList = subAgencyList.stream().map(ScreenCustomerAgencyDTO::getAgencyId).collect(Collectors.toList()); + //查询组织的话题转议题数据 + List toIssueStart = dataStatsDao.getSubAgencyTopicShiftIssue(agencyList, formDTO.getStartDateId()); + List toIssueEnd = dataStatsDao.getSubAgencyTopicShiftIssue(agencyList, formDTO.getEndDateId()); + Map toIssueStartMap = toIssueStart.stream().collect(Collectors.toMap(SubAgencyFormDTO.Topic::getAgencyId, SubAgencyFormDTO.Topic::getShiftedIssueTotal, (o1, o2) -> o1)); + Map toIssueEndMap = toIssueEnd.stream().collect(Collectors.toMap(SubAgencyFormDTO.Topic::getAgencyId, SubAgencyFormDTO.Topic::getShiftedIssueTotal, (o1, o2) -> o1)); + //查询组织的议题转项目数据 + List toProjectStart = dataStatsDao.getSubAgencyIssue(agencyList, formDTO.getStartDateId()); + List toProjectEnd = dataStatsDao.getSubAgencyIssue(agencyList, formDTO.getEndDateId()); + Map toProjectStartMap = toProjectStart.stream().collect(Collectors.toMap(SubAgencyIssueResultDTO::getAgencyId, SubAgencyIssueResultDTO::getShiftProjectTotal, (o1, o2) -> o1)); + Map toProjectEndMap = toProjectEnd.stream().collect(Collectors.toMap(SubAgencyIssueResultDTO::getAgencyId, SubAgencyIssueResultDTO::getShiftProjectTotal, (o1, o2) -> o1)); + //查询组织已关闭的项目数据 + List closeProjectStart = dataStatsDao.getSubAgencyProject(agencyList, formDTO.getStartDateId()); + List closeProjectEnd = dataStatsDao.getSubAgencyProject(agencyList, formDTO.getEndDateId()); + Map closeProjectStartMap = closeProjectStart.stream().collect(Collectors.toMap(SubAgencyProjectResultDTO::getAgencyId, SubAgencyProjectResultDTO::getClosedProjectTotal, (o1, o2) -> o1)); + Map closeProjectEndMap = closeProjectEnd.stream().collect(Collectors.toMap(SubAgencyProjectResultDTO::getAgencyId, SubAgencyProjectResultDTO::getClosedProjectTotal, (o1, o2) -> o1)); + //巡查次数和时间 + List patrolList = statsStaffPatrolRecordDailyService.getPatrolSumList(agencyList,formDTO.getStartDateId(),formDTO.getEndDateId()); + Map patrolListMap = patrolList.stream().collect(Collectors.toMap(StatsStaffPatrolRecordDailyEntity::getAgencyId, o -> o, (o1, o2) -> o1)); + + subAgencyList.forEach(agency->{ + String agencyId = agency.getAgencyId(); + WorkFactResultDTO resultDTO = new WorkFactResultDTO(); + resultDTO.setOrgId(agencyId); + resultDTO.setOrgName(agency.getAgencyName()); + resultDTO.setTopicToIssueTotal(getTotal(toIssueStartMap,toIssueEndMap,agencyId)); + resultDTO.setIssueToProjectTotal(getTotal(toProjectStartMap,toProjectEndMap,agencyId)); + resultDTO.setClosedProjectTotal(getTotal(closeProjectStartMap,closeProjectEndMap,agencyId)); + StatsStaffPatrolRecordDailyEntity patrolRecordDTO = patrolListMap.get(agencyId); + if (patrolRecordDTO != null){ + resultDTO.setPatrolTotal(patrolRecordDTO.getPatrolTotal()); + Integer totalTime = patrolRecordDTO.getTotalTime(); + resultDTO.setPatrolTotalTime(totalTime.toString()); + } + result.add(resultDTO); + }); + } - return null; + return result; + } + private Integer getTotal(Map startMap, Map endMap,String agencyId){ + Integer total1 = startMap.getOrDefault(agencyId,NumConstant.ZERO); + Integer total2 = endMap.getOrDefault(agencyId,NumConstant.ZERO); + if (total1.equals(total2)){ + log.warn("===========相等,total:{}",total1); + } + return Math.max(total2-total1,0); } private String getPercentage(Integer countInt, Integer totalInt) { diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/StatsStaffPatrolRecordDailyService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/StatsStaffPatrolRecordDailyService.java new file mode 100644 index 0000000000..4de390526a --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/StatsStaffPatrolRecordDailyService.java @@ -0,0 +1,42 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dataaggre.service.epmetuser; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; + +import java.util.List; + +/** + * 工作人员巡查主记录 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-06-07 + */ +public interface StatsStaffPatrolRecordDailyService extends BaseService { + + /** + * desc:获取组织或网格的 时间段内的总次数等 + * @param agencyList + * @param startDateId + * @param endDateId + * @return + */ + List getPatrolSumList(List agencyList, String startDateId, String endDateId); + +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java new file mode 100644 index 0000000000..41818e1b6d --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java @@ -0,0 +1,43 @@ +package com.epmet.dataaggre.service.epmetuser.impl; + +import com.epmet.commons.dynamic.datasource.annotation.DataSource; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.dataaggre.constant.DataSourceConstant; +import com.epmet.dataaggre.dao.epmetuser.StatsStaffPatrolRecordDailyDao; +import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; +import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * desc: + * + * @author: LiuJanJun + * @date: 2021/8/6 11:06 上午 + * @version: 1.0 + */ +@DataSource(DataSourceConstant.EPMET_USER) +@Slf4j +@Service +public class StatsStaffPatrolRecordDailyServiceImpl extends BaseServiceImpl implements StatsStaffPatrolRecordDailyService { + /** + * desc:获取组织或网格的 时间段内的总次数等 + * + * @param agencyList + * @param startDateId + * @param endDateId + * @return + */ + @Override + public List getPatrolSumList(List agencyList, String startDateId, String endDateId) { + /* LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(StatsStaffPatrolRecordDailyEntity::getDelFlag, NumConstant.ZERO_STR) + .between(StatsStaffPatrolRecordDailyEntity::getDateId, startDateId,endDateId) + .in(StatsStaffPatrolRecordDailyEntity::getAgencyId, agencyList) + ;*/ + return baseDao.getPatrolSumList(agencyList,startDateId,endDateId); + } + +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml index c1d88ccc8e..d9f6301ad2 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml @@ -727,5 +727,20 @@ agency_id = #{agencyId} + diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml new file mode 100644 index 0000000000..4cc36dc640 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml @@ -0,0 +1,17 @@ + + + + +