From 2cff61eb31b452e57a4783d163277b7bfc9e999d Mon Sep 17 00:00:00 2001 From: zhaokai Date: Wed, 22 Jul 2026 11:29:39 +0800 Subject: [PATCH] =?UTF-8?q?feat(api):=20=E6=B7=BB=E5=8A=A0=E5=8D=B1?= =?UTF-8?q?=E9=99=A9=E4=BD=9C=E4=B8=9A=E7=BB=9F=E8=AE=A1=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=92=8C=E9=83=A8=E9=97=A8=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/EightworkInfoController.java | 16 ++++++ .../command/query/EightworkInfoQueryExe.java | 53 +++++++++++++++++++ .../service/EightworkInfoServiceImpl.java | 14 +++++ .../eightwork/api/EightworkInfoServiceI.java | 8 +++ .../ScreenDangerWorkDataStatisticsQry.java | 22 ++++++++ .../dto/ScreenDepartmentStatisticsQry.java | 22 ++++++++ .../clientobject/DangerWorkStatisticsCO.java | 6 +++ .../ScreenDangerWorkDataStatisticsCO.java | 28 ++++++++++ .../ScreenDepartmentStatisticsCO.java | 22 ++++++++ .../dto/DangerWorkStatisticsDTO.java | 2 + .../ScreenDangerWorkDataStatisticsDTO.java | 16 ++++++ .../dto/ScreenDepartmentStatisticsDTO.java | 15 ++++++ .../mapper/EightworkInfoMapper.java | 6 +++ .../repository/EightworkInfoRepository.java | 6 +++ .../impl/EightworkInfoRepositoryImpl.java | 12 +++++ .../resources/mapper/EightworkInfoMapper.xml | 45 +++++++++++++++- 16 files changed, 292 insertions(+), 1 deletion(-) create mode 100644 web-client/src/main/java/com/zcloud/eightwork/dto/ScreenDangerWorkDataStatisticsQry.java create mode 100644 web-client/src/main/java/com/zcloud/eightwork/dto/ScreenDepartmentStatisticsQry.java create mode 100644 web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/ScreenDangerWorkDataStatisticsCO.java create mode 100644 web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/ScreenDepartmentStatisticsCO.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/ScreenDangerWorkDataStatisticsDTO.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/ScreenDepartmentStatisticsDTO.java diff --git a/web-adapter/src/main/java/com/zcloud/eightwork/web/EightworkInfoController.java b/web-adapter/src/main/java/com/zcloud/eightwork/web/EightworkInfoController.java index fc09a2b..2d1c1d6 100644 --- a/web-adapter/src/main/java/com/zcloud/eightwork/web/EightworkInfoController.java +++ b/web-adapter/src/main/java/com/zcloud/eightwork/web/EightworkInfoController.java @@ -8,6 +8,8 @@ import com.zcloud.eightwork.dto.EightworkInfoPageQry; import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd; import com.zcloud.eightwork.dto.EightworkInfoWithdrawCmd; import com.zcloud.eightwork.dto.ForceTerminateCmd; +import com.zcloud.eightwork.dto.ScreenDangerWorkDataStatisticsQry; +import com.zcloud.eightwork.dto.ScreenDepartmentStatisticsQry; import com.zcloud.eightwork.dto.ScreenStatisticsQry; import com.zcloud.eightwork.dto.ScreenWorkPageQry; import com.zcloud.eightwork.dto.ScreenWorkRecordQry; @@ -15,6 +17,8 @@ import com.zcloud.eightwork.dto.ScreenWorkTrendQry; import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO; import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO; import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO; +import com.zcloud.eightwork.dto.clientobject.ScreenDangerWorkDataStatisticsCO; +import com.zcloud.eightwork.dto.clientobject.ScreenDepartmentStatisticsCO; import com.zcloud.eightwork.dto.clientobject.ScreenStatusStatisticsCO; import com.zcloud.eightwork.dto.clientobject.ScreenWorkPageCO; import com.zcloud.eightwork.dto.clientobject.ScreenWorkRecordCO; @@ -152,5 +156,17 @@ public class EightworkInfoController { return eightworkInfoService.screenWorkPage(qry); } + @ApiOperation("可视化大屏-部门统计") + @PostMapping("/screenDepartmentStatistics") + public MultiResponse screenDepartmentStatistics(@RequestBody ScreenDepartmentStatisticsQry qry) { + return MultiResponse.of(eightworkInfoService.screenDepartmentStatistics(qry)); + } + + @ApiOperation("可视化大屏-危险作业数据统计") + @PostMapping("/screenDangerWorkDataStatistics") + public MultiResponse screenDangerWorkDataStatistics(@RequestBody ScreenDangerWorkDataStatisticsQry qry) { + return MultiResponse.of(eightworkInfoService.screenDangerWorkDataStatistics(qry)); + } + } diff --git a/web-app/src/main/java/com/zcloud/eightwork/command/query/EightworkInfoQueryExe.java b/web-app/src/main/java/com/zcloud/eightwork/command/query/EightworkInfoQueryExe.java index 311c397..e25ba9f 100644 --- a/web-app/src/main/java/com/zcloud/eightwork/command/query/EightworkInfoQueryExe.java +++ b/web-app/src/main/java/com/zcloud/eightwork/command/query/EightworkInfoQueryExe.java @@ -2,6 +2,7 @@ package com.zcloud.eightwork.command.query; import cn.hutool.core.collection.CollUtil; import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.exception.BizException; import com.alibaba.fastjson.JSONObject; import com.jjb.saas.framework.auth.utils.AuthContext; import com.zcloud.eightwork.command.convertor.EightworkInfoCoConvertor; @@ -9,12 +10,16 @@ import com.zcloud.eightwork.domain.model.EightworkInfoE; import com.zcloud.eightwork.domain.model.enums.WorkCodeEnum; import com.zcloud.eightwork.dto.DangerWorkStatisticsQry; import com.zcloud.eightwork.dto.EightworkInfoPageQry; +import com.zcloud.eightwork.dto.ScreenDangerWorkDataStatisticsQry; +import com.zcloud.eightwork.dto.ScreenDepartmentStatisticsQry; import com.zcloud.eightwork.dto.ScreenStatisticsQry; import com.zcloud.eightwork.dto.ScreenWorkPageQry; import com.zcloud.eightwork.dto.ScreenWorkRecordQry; import com.zcloud.eightwork.dto.ScreenWorkTrendQry; import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO; import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO; +import com.zcloud.eightwork.dto.clientobject.ScreenDangerWorkDataStatisticsCO; +import com.zcloud.eightwork.dto.clientobject.ScreenDepartmentStatisticsCO; import com.zcloud.eightwork.dto.clientobject.ScreenStatusStatisticsCO; import com.zcloud.eightwork.dto.clientobject.ScreenWorkPageCO; import com.zcloud.eightwork.dto.clientobject.ScreenWorkRecordCO; @@ -23,6 +28,8 @@ import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO; import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO; import com.zcloud.eightwork.persistence.dataobject.EightworkSupplementaryInfoDO; import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO; +import com.zcloud.eightwork.persistence.dataobject.dto.ScreenDangerWorkDataStatisticsDTO; +import com.zcloud.eightwork.persistence.dataobject.dto.ScreenDepartmentStatisticsDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO; @@ -114,6 +121,12 @@ public class EightworkInfoQueryExe { if (statisticsCO.getAppliedCount() == null) { statisticsCO.setAppliedCount(0L); } + if (statisticsCO.getWorkingCount() == null) { + statisticsCO.setWorkingCount(0L); + } + if (statisticsCO.getArchivedCount() == null) { + statisticsCO.setArchivedCount(0L); + } return statisticsCO; } @@ -193,6 +206,46 @@ public class EightworkInfoQueryExe { return PageResponse.of(records, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); } + public List screenDepartmentStatistics(ScreenDepartmentStatisticsQry qry) { + + Map params = PageQueryHelper.toHashMap(qry); + List statisticsDTOS = eightworkInfoRepository.screenDepartmentStatistics(params); + if (CollUtil.isEmpty(statisticsDTOS)) { + return new ArrayList<>(); + } + return statisticsDTOS.stream().map(statisticsDTO -> { + ScreenDepartmentStatisticsCO statisticsCO = new ScreenDepartmentStatisticsCO(); + BeanUtils.copyProperties(statisticsDTO, statisticsCO); + if (statisticsCO.getWorkCount() == null) { + statisticsCO.setWorkCount(0L); + } + return statisticsCO; + }).collect(Collectors.toList()); + } + + public List screenDangerWorkDataStatistics(ScreenDangerWorkDataStatisticsQry qry) { + + Map params = PageQueryHelper.toHashMap(qry); + List statisticsDTOS = eightworkInfoRepository.screenDangerWorkDataStatistics(params); + Map statisticsMap = new HashMap<>(); + if (CollUtil.isNotEmpty(statisticsDTOS)) { + statisticsMap = statisticsDTOS.stream() + .collect(Collectors.toMap(ScreenDangerWorkDataStatisticsDTO::getWorkType, item -> item, (oldItem, newItem) -> oldItem)); + } + List statisticsCOS = new ArrayList<>(); + for (WorkCodeEnum workCodeEnum : WorkCodeEnum.values()) { + ScreenDangerWorkDataStatisticsDTO statisticsDTO = statisticsMap.get(workCodeEnum.getWorkType()); + ScreenDangerWorkDataStatisticsCO statisticsCO = new ScreenDangerWorkDataStatisticsCO(); + statisticsCO.setWorkType(workCodeEnum.getWorkType()); + statisticsCO.setWorkTypeName(workCodeEnum.getName()); + statisticsCO.setWorkCount(statisticsDTO == null || statisticsDTO.getWorkCount() == null ? 0L : statisticsDTO.getWorkCount()); + statisticsCO.setDoingCount(statisticsDTO == null || statisticsDTO.getDoingCount() == null ? 0L : statisticsDTO.getDoingCount()); + statisticsCO.setPersonCount(statisticsDTO == null || statisticsDTO.getPersonCount() == null ? 0L : statisticsDTO.getPersonCount()); + statisticsCOS.add(statisticsCO); + } + return statisticsCOS; + } + private List buildDateRange(ScreenWorkTrendQry qry) { LocalDate endDate = LocalDate.now(); LocalDate startDate = endDate.minusDays(6); diff --git a/web-app/src/main/java/com/zcloud/eightwork/service/EightworkInfoServiceImpl.java b/web-app/src/main/java/com/zcloud/eightwork/service/EightworkInfoServiceImpl.java index 194ffb6..d974861 100644 --- a/web-app/src/main/java/com/zcloud/eightwork/service/EightworkInfoServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/eightwork/service/EightworkInfoServiceImpl.java @@ -17,6 +17,8 @@ import com.zcloud.eightwork.dto.DangerWorkStatisticsQry; import com.zcloud.eightwork.dto.EightworkInfoAddCmd; import com.zcloud.eightwork.dto.EightworkInfoPageQry; import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd; +import com.zcloud.eightwork.dto.ScreenDangerWorkDataStatisticsQry; +import com.zcloud.eightwork.dto.ScreenDepartmentStatisticsQry; import com.zcloud.eightwork.dto.ScreenStatisticsQry; import com.zcloud.eightwork.dto.ScreenWorkPageQry; import com.zcloud.eightwork.dto.ScreenWorkRecordQry; @@ -24,6 +26,8 @@ import com.zcloud.eightwork.dto.ScreenWorkTrendQry; import com.zcloud.eightwork.dto.TaskLogNextCmd; import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO; import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO; +import com.zcloud.eightwork.dto.clientobject.ScreenDangerWorkDataStatisticsCO; +import com.zcloud.eightwork.dto.clientobject.ScreenDepartmentStatisticsCO; import com.zcloud.eightwork.dto.clientobject.ScreenStatusStatisticsCO; import com.zcloud.eightwork.dto.clientobject.ScreenWorkPageCO; import com.zcloud.eightwork.dto.clientobject.ScreenWorkRecordCO; @@ -202,5 +206,15 @@ public class EightworkInfoServiceImpl implements EightworkInfoServiceI { public PageResponse screenWorkPage(ScreenWorkPageQry qry) { return eightworkInfoQueryExe.screenWorkPage(qry); } + + @Override + public List screenDepartmentStatistics(ScreenDepartmentStatisticsQry qry) { + return eightworkInfoQueryExe.screenDepartmentStatistics(qry); + } + + @Override + public List screenDangerWorkDataStatistics(ScreenDangerWorkDataStatisticsQry qry) { + return eightworkInfoQueryExe.screenDangerWorkDataStatistics(qry); + } } diff --git a/web-client/src/main/java/com/zcloud/eightwork/api/EightworkInfoServiceI.java b/web-client/src/main/java/com/zcloud/eightwork/api/EightworkInfoServiceI.java index 298a60b..185a719 100644 --- a/web-client/src/main/java/com/zcloud/eightwork/api/EightworkInfoServiceI.java +++ b/web-client/src/main/java/com/zcloud/eightwork/api/EightworkInfoServiceI.java @@ -6,12 +6,16 @@ import com.zcloud.eightwork.dto.DangerWorkStatisticsQry; import com.zcloud.eightwork.dto.EightworkInfoAddCmd; import com.zcloud.eightwork.dto.EightworkInfoPageQry; import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd; +import com.zcloud.eightwork.dto.ScreenDangerWorkDataStatisticsQry; +import com.zcloud.eightwork.dto.ScreenDepartmentStatisticsQry; import com.zcloud.eightwork.dto.ScreenStatisticsQry; import com.zcloud.eightwork.dto.ScreenWorkPageQry; import com.zcloud.eightwork.dto.ScreenWorkRecordQry; import com.zcloud.eightwork.dto.ScreenWorkTrendQry; import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO; import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO; +import com.zcloud.eightwork.dto.clientobject.ScreenDangerWorkDataStatisticsCO; +import com.zcloud.eightwork.dto.clientobject.ScreenDepartmentStatisticsCO; import com.zcloud.eightwork.dto.clientobject.ScreenStatusStatisticsCO; import com.zcloud.eightwork.dto.clientobject.ScreenWorkPageCO; import com.zcloud.eightwork.dto.clientobject.ScreenWorkRecordCO; @@ -69,5 +73,9 @@ public interface EightworkInfoServiceI { PageResponse screenWorkRecord(ScreenWorkRecordQry qry); PageResponse screenWorkPage(ScreenWorkPageQry qry); + + List screenDepartmentStatistics(ScreenDepartmentStatisticsQry qry); + + List screenDangerWorkDataStatistics(ScreenDangerWorkDataStatisticsQry qry); } diff --git a/web-client/src/main/java/com/zcloud/eightwork/dto/ScreenDangerWorkDataStatisticsQry.java b/web-client/src/main/java/com/zcloud/eightwork/dto/ScreenDangerWorkDataStatisticsQry.java new file mode 100644 index 0000000..8da8669 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/eightwork/dto/ScreenDangerWorkDataStatisticsQry.java @@ -0,0 +1,22 @@ +package com.zcloud.eightwork.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * 可视化大屏危险作业数据统计查询 + * + * @author codex + */ +@Data +public class ScreenDangerWorkDataStatisticsQry implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "企业id", name = "corpinfoId") + private Long corpinfoId; + + @ApiModelProperty(value = "港区,1:秦皇岛港区,2:秦皇岛东,3:秦皇岛西", name = "portArea") + private Integer portArea; +} diff --git a/web-client/src/main/java/com/zcloud/eightwork/dto/ScreenDepartmentStatisticsQry.java b/web-client/src/main/java/com/zcloud/eightwork/dto/ScreenDepartmentStatisticsQry.java new file mode 100644 index 0000000..4e20549 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/eightwork/dto/ScreenDepartmentStatisticsQry.java @@ -0,0 +1,22 @@ +package com.zcloud.eightwork.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * 可视化大屏部门统计查询 + * + * @author codex + */ +@Data +public class ScreenDepartmentStatisticsQry implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "企业id", name = "corpinfoId") + private Long corpinfoId; + + @ApiModelProperty(value = "港区,1:秦皇岛港区,2:秦皇岛东,3:秦皇岛西", name = "portArea") + private Integer portArea; +} diff --git a/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/DangerWorkStatisticsCO.java b/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/DangerWorkStatisticsCO.java index b5196b1..e9594bf 100644 --- a/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/DangerWorkStatisticsCO.java +++ b/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/DangerWorkStatisticsCO.java @@ -16,4 +16,10 @@ public class DangerWorkStatisticsCO extends ClientObject { @ApiModelProperty(value = "已申请数量") private Long appliedCount; + + @ApiModelProperty(value = "作业中数量") + private Long workingCount; + + @ApiModelProperty(value = "已归档数量") + private Long archivedCount; } diff --git a/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/ScreenDangerWorkDataStatisticsCO.java b/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/ScreenDangerWorkDataStatisticsCO.java new file mode 100644 index 0000000..2f313a7 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/ScreenDangerWorkDataStatisticsCO.java @@ -0,0 +1,28 @@ +package com.zcloud.eightwork.dto.clientobject; + +import com.alibaba.cola.dto.ClientObject; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 可视化大屏危险作业数据统计 + * + * @author codex + */ +@Data +public class ScreenDangerWorkDataStatisticsCO extends ClientObject { + @ApiModelProperty(value = "作业类型") + private String workType; + + @ApiModelProperty(value = "作业类型名称") + private String workTypeName; + + @ApiModelProperty(value = "作业数量") + private Long workCount; + + @ApiModelProperty(value = "进行中作业数") + private Long doingCount; + + @ApiModelProperty(value = "人员数") + private Long personCount; +} diff --git a/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/ScreenDepartmentStatisticsCO.java b/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/ScreenDepartmentStatisticsCO.java new file mode 100644 index 0000000..d16bd90 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/eightwork/dto/clientobject/ScreenDepartmentStatisticsCO.java @@ -0,0 +1,22 @@ +package com.zcloud.eightwork.dto.clientobject; + +import com.alibaba.cola.dto.ClientObject; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 可视化大屏部门统计 + * + * @author codex + */ +@Data +public class ScreenDepartmentStatisticsCO extends ClientObject { + @ApiModelProperty(value = "部门id") + private Long departmentId; + + @ApiModelProperty(value = "部门名称") + private String departmentName; + + @ApiModelProperty(value = "作业数量") + private Long workCount; +} diff --git a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/DangerWorkStatisticsDTO.java b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/DangerWorkStatisticsDTO.java index 7b6f8c0..bef9958 100644 --- a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/DangerWorkStatisticsDTO.java +++ b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/DangerWorkStatisticsDTO.java @@ -11,4 +11,6 @@ import lombok.Data; public class DangerWorkStatisticsDTO { private Long doingCount; private Long appliedCount; + private Long workingCount; + private Long archivedCount; } diff --git a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/ScreenDangerWorkDataStatisticsDTO.java b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/ScreenDangerWorkDataStatisticsDTO.java new file mode 100644 index 0000000..40fd60d --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/ScreenDangerWorkDataStatisticsDTO.java @@ -0,0 +1,16 @@ +package com.zcloud.eightwork.persistence.dataobject.dto; + +import lombok.Data; + +/** + * 可视化大屏危险作业数据统计 + * + * @author codex + */ +@Data +public class ScreenDangerWorkDataStatisticsDTO { + private String workType; + private Long workCount; + private Long doingCount; + private Long personCount; +} diff --git a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/ScreenDepartmentStatisticsDTO.java b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/ScreenDepartmentStatisticsDTO.java new file mode 100644 index 0000000..de943b3 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/dto/ScreenDepartmentStatisticsDTO.java @@ -0,0 +1,15 @@ +package com.zcloud.eightwork.persistence.dataobject.dto; + +import lombok.Data; + +/** + * 可视化大屏部门统计 + * + * @author codex + */ +@Data +public class ScreenDepartmentStatisticsDTO { + private Long departmentId; + private String departmentName; + private Long workCount; +} diff --git a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/mapper/EightworkInfoMapper.java b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/mapper/EightworkInfoMapper.java index f588025..eecc8ff 100644 --- a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/mapper/EightworkInfoMapper.java +++ b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/mapper/EightworkInfoMapper.java @@ -7,6 +7,8 @@ import com.jjb.saas.framework.datascope.annotation.DataScope; import com.jjb.saas.framework.datascope.annotation.DataScopes; import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO; import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO; +import com.zcloud.eightwork.persistence.dataobject.dto.ScreenDangerWorkDataStatisticsDTO; +import com.zcloud.eightwork.persistence.dataobject.dto.ScreenDepartmentStatisticsDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO; @@ -42,5 +44,9 @@ public interface EightworkInfoMapper extends BaseMapper { IPage screenWorkRecord(Page> page, @Param("params") Map params); IPage screenWorkPage(Page> page, @Param("params") Map params); + + List screenDepartmentStatistics(@Param("params") Map params); + + List screenDangerWorkDataStatistics(@Param("params") Map params); } diff --git a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/repository/EightworkInfoRepository.java b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/repository/EightworkInfoRepository.java index 9496e31..1ec25ce 100644 --- a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/repository/EightworkInfoRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/repository/EightworkInfoRepository.java @@ -4,6 +4,8 @@ import com.alibaba.cola.dto.PageResponse; import com.jjb.saas.framework.repository.repo.BaseRepository; import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO; import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO; +import com.zcloud.eightwork.persistence.dataobject.dto.ScreenDangerWorkDataStatisticsDTO; +import com.zcloud.eightwork.persistence.dataobject.dto.ScreenDepartmentStatisticsDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO; @@ -39,6 +41,10 @@ public interface EightworkInfoRepository extends BaseRepository PageResponse screenWorkPage(Map params); + List screenDepartmentStatistics(Map params); + + List screenDangerWorkDataStatistics(Map params); + /** * 使用 CAS 方式更新 lockFlag(乐观锁) * 只有当 lockFlag 和 status 都匹配时才更新 diff --git a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/repository/impl/EightworkInfoRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/repository/impl/EightworkInfoRepositoryImpl.java index 5b11cc1..1eeddb0 100644 --- a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/repository/impl/EightworkInfoRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/repository/impl/EightworkInfoRepositoryImpl.java @@ -11,6 +11,8 @@ import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; import com.zcloud.eightwork.domain.model.enums.MenuEnum; import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO; import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO; +import com.zcloud.eightwork.persistence.dataobject.dto.ScreenDangerWorkDataStatisticsDTO; +import com.zcloud.eightwork.persistence.dataobject.dto.ScreenDepartmentStatisticsDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO; import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO; @@ -106,6 +108,16 @@ public class EightworkInfoRepositoryImpl extends BaseRepositoryImpl screenDepartmentStatistics(Map params) { + return eightworkInfoMapper.screenDepartmentStatistics(params); + } + + @Override + public List screenDangerWorkDataStatistics(Map params) { + return eightworkInfoMapper.screenDangerWorkDataStatistics(params); + } + @Override public boolean updateLockFlagToLocked(Long id, Integer expectedLockFlag, Integer newLockFlag, Integer expectedStatus) { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); diff --git a/web-infrastructure/src/main/resources/mapper/EightworkInfoMapper.xml b/web-infrastructure/src/main/resources/mapper/EightworkInfoMapper.xml index 3fd76c1..88215e9 100644 --- a/web-infrastructure/src/main/resources/mapper/EightworkInfoMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/EightworkInfoMapper.xml @@ -136,7 +136,9 @@ + + + +