From 58cb0cca9b08c2a02d2e910455e9e489a7fd2b9a Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Tue, 4 Jan 2022 17:17:34 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E7=BD=91=E6=A0=BC=E5=91=98=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E7=BB=9F=E8=AE=A1=E3=80=91=E5=B7=A1=E6=9F=A5=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/patrol/PcworkRecordListFormDTO.java | 53 +++++++++++++++++++ .../dto/result/PcworkRecordListResultDTO.java | 43 +++++++++++++++ .../controller/StaffPatrolController.java | 12 +++++ .../com/epmet/dao/StaffPatrolRecordDao.java | 7 +++ .../service/StaffPatrolRecordService.java | 13 ++--- .../impl/StaffPatrolRecordServiceImpl.java | 35 ++++++++++++ .../resources/mapper/StaffPatrolRecordDao.xml | 33 ++++++++++++ 7 files changed, 190 insertions(+), 6 deletions(-) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/patrol/PcworkRecordListFormDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcworkRecordListResultDTO.java diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/patrol/PcworkRecordListFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/patrol/PcworkRecordListFormDTO.java new file mode 100644 index 0000000000..6c628edfec --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/patrol/PcworkRecordListFormDTO.java @@ -0,0 +1,53 @@ +package com.epmet.dto.form.patrol; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 【网格员工作统计】巡查记录列表 + * @Author sun + */ +@Data +public class PcworkRecordListFormDTO implements Serializable { + private static final long serialVersionUID = 9156247659994638103L; + + /** + * 组织或网格Id + */ + @NotBlank(message = "组织Id不能为空", groups = Staff.class) + private String orgId; + /** + * 组织agency 网格grid + */ + @NotBlank(message = "组织类型不能为空", groups = Staff.class) + private String orgType; + /** + * 工作人员Id + */ + private String staffId; + /** + * 开始时间【yyyymmdd】 + */ + private String startTime; + /** + * 结束时间【yyyymmdd】 + */ + @NotBlank(message = "结束时间不能为空",groups = Staff.class) + private String endTime; + /** + * 页码 + * */ + @Min(1) + private Integer pageNo; + /** + * 每页多少条 + * */ + private Integer pageSize = 20; + private Boolean isPage = true; + public interface Staff extends CustomerClientShowGroup {} + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcworkRecordListResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcworkRecordListResultDTO.java new file mode 100644 index 0000000000..a7ff4f318d --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcworkRecordListResultDTO.java @@ -0,0 +1,43 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * @Description 【网格员工作统计】巡查记录列表 + * @Author sun + */ +@Data +public class PcworkRecordListResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + List list = new ArrayList<>(); + private Integer total; + + @Data + public static class StaffPatrol { + //人员ID + private String staffId; + //人员名称 + private String staffName; + //网格ID + private String gridId; + //网格名称 + private String gridName; + //状态(英文key) + private String status; + //状态(中文) + private String statusName; + //巡查开始时间 返回返回格式化字符串,yyyy-MM-dd HH:mm:ss + private String patrolStartTime; + //巡查结束时间 返回返回格式化字符串,yyyy-MM-dd HH:mm:ss + private String patrolEndTime; + //巡查时长 xx小时xx分钟 + private String totalTime; + } + +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffPatrolController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffPatrolController.java index dbd32146fa..8d92257c74 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffPatrolController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffPatrolController.java @@ -8,6 +8,7 @@ import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dto.form.*; +import com.epmet.dto.form.patrol.PcworkRecordListFormDTO; import com.epmet.dto.result.*; import com.epmet.service.StaffPatrolDetailService; import com.epmet.service.StaffPatrolRecordService; @@ -155,4 +156,15 @@ public class StaffPatrolController { return new Result>().ok(staffPatrolRecordService.patrolTrack(formDTO)); } + /** + * @Author sun + * @Description 【网格员工作统计】巡查记录列表 + **/ + @NoRepeatSubmit + @PostMapping("pcwork/record-list") + public Result pcworkRecordList(@RequestBody PcworkRecordListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, PcworkRecordListFormDTO.Staff.class); + return new Result().ok(staffPatrolRecordService.pcworkRecordList(formDTO)); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffPatrolRecordDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffPatrolRecordDao.java index 7ab70be6bf..ac82f07584 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffPatrolRecordDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffPatrolRecordDao.java @@ -19,7 +19,9 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.form.RecordListFormDTO; +import com.epmet.dto.form.patrol.PcworkRecordListFormDTO; import com.epmet.dto.result.GridManagerUserListResultDTO; +import com.epmet.dto.result.PcworkRecordListResultDTO; import com.epmet.dto.result.RecordListResultDTO; import com.epmet.entity.StaffPatrolRecordEntity; import org.apache.ibatis.annotations.Mapper; @@ -62,4 +64,9 @@ public interface StaffPatrolRecordDao extends BaseDao { */ List recordList(RecordListFormDTO formDTO); + /** + * @Author sun + * @Description 【网格员工作统计】巡查记录列表 + **/ + List pcworkRecordList(PcworkRecordListFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffPatrolRecordService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffPatrolRecordService.java index 4b54f84c97..a1727a8342 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffPatrolRecordService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffPatrolRecordService.java @@ -20,12 +20,8 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.dto.form.*; -import com.epmet.dto.result.PatrolUploadResultDTO; -import com.epmet.dto.result.StaffPatrolInitResultDTO; -import com.epmet.dto.result.StartPatrolResultDTO; -import com.epmet.dto.result.PatrolTrackResultDTO; -import com.epmet.dto.result.RecordListResultDTO; -import com.epmet.dto.result.UserNameAndLLResultDTO; +import com.epmet.dto.form.patrol.PcworkRecordListFormDTO; +import com.epmet.dto.result.*; import com.epmet.entity.StaffPatrolRecordEntity; import java.util.List; @@ -115,4 +111,9 @@ public interface StaffPatrolRecordService extends BaseService patrolTrack(PatrolTrackFormDTO formDTO); + /** + * @Author sun + * @Description 【网格员工作统计】巡查记录列表 + **/ + PcworkRecordListResultDTO pcworkRecordList(PcworkRecordListFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffPatrolRecordServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffPatrolRecordServiceImpl.java index 69db928e64..860aa91c3d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffPatrolRecordServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffPatrolRecordServiceImpl.java @@ -20,6 +20,7 @@ import com.epmet.dao.StatsStaffPatrolRecordDailyDao; import com.epmet.dto.CustomerGridDTO; import com.epmet.dto.StaffPatrolDetailDTO; import com.epmet.dto.form.*; +import com.epmet.dto.form.patrol.PcworkRecordListFormDTO; import com.epmet.dto.result.*; import com.epmet.entity.StaffPatrolDetailEntity; import com.epmet.entity.StaffPatrolRecordEntity; @@ -31,6 +32,8 @@ import com.epmet.send.SendMqMsgUtil; import com.epmet.service.StaffPatrolDetailService; import com.epmet.service.StaffPatrolRecordService; import com.epmet.util.DimIdGenerator; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; @@ -451,4 +454,36 @@ public class StaffPatrolRecordServiceImpl extends BaseServiceImpl(); } + + /** + * @Author sun + * @Description 【网格员工作统计】巡查记录列表 + **/ + @Override + public PcworkRecordListResultDTO pcworkRecordList(PcworkRecordListFormDTO formDTO) { + PcworkRecordListResultDTO resultDTO = new PcworkRecordListResultDTO(); + //1.按条件查询网格员巡查数据 + PageInfo result = + PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize(), formDTO.getIsPage()).doSelectPageInfo(() -> staffPatrolRecordDao.pcworkRecordList(formDTO)); + if (org.springframework.util.CollectionUtils.isEmpty(result.getList())) { + return resultDTO; + } + + //2.查询网格信息 + OrgInfoFormDTO org = new OrgInfoFormDTO(); + List orgIds = result.getList().stream().map(PcworkRecordListResultDTO.StaffPatrol::getGridId).collect(Collectors.toList()); + orgIds = orgIds.stream().distinct().collect(Collectors.toList()); + org.setOrgIds(orgIds); + org.setOrgType("grid"); + Result> orgResult = govOrgOpenFeignClient.selectOrgInfo(org); + if (!orgResult.success()) { + throw new RenException("获取网格基础信息失败......"); + } + + //3.封装数据并返回 + result.getList().forEach(r -> orgResult.getData().stream().filter(u -> r.getGridId().equals(u.getOrgId())).forEach(u -> r.setGridName(u.getOrgName()))); + resultDTO.setTotal((int)result.getTotal()); + resultDTO.setList(result.getList()); + return resultDTO; + } } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffPatrolRecordDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffPatrolRecordDao.xml index 2ae77add42..b446fb23b2 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffPatrolRecordDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffPatrolRecordDao.xml @@ -75,4 +75,37 @@ GROUP BY recordId + + \ No newline at end of file