From 40abd4791d9988de4640e7f40260dffb67fe98a8 Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 4 Jan 2022 11:02:02 +0800 Subject: [PATCH 01/16] =?UTF-8?q?Revert=20"=E4=B8=B4=E6=97=B6=E5=A4=84?= =?UTF-8?q?=E7=90=86=20202212=E4=B8=BA202112=20=E5=9B=A0=E4=B8=BA=E4=BB=96?= =?UTF-8?q?=E4=BB=AC=E4=BC=A0=E5=8F=82=E9=94=99=E8=AF=AF=202"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit e6b830b5 --- .../epmet/datareport/controller/screen/IndexController.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java index 5824a1a9cc..dcf083d507 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java @@ -67,10 +67,6 @@ public class IndexController { //area_code升级,新增此参数 monthBarchartFormDTO.setCustomerId(customerId); ValidatorUtils.validateEntity(monthBarchartFormDTO, MonthBarchartFormDTO.MonthBarchart.class); - String monthId = monthBarchartFormDTO.getMonthId(); - if ("202212".equals(monthId)){ - monthBarchartFormDTO.setMonthId("202112"); - } return new Result().ok(indexService.monthBarchart(monthBarchartFormDTO)); } From 79695ea7e0d3c37d7298941e2f3efdfbe06d437a Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Tue, 4 Jan 2022 14:19:24 +0800 Subject: [PATCH 02/16] =?UTF-8?q?=E3=80=90=E7=BD=91=E6=A0=BC=E5=91=98?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E7=BB=9F=E8=AE=A1=E3=80=91=E4=BE=8B=E8=A1=8C?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/form/PcWorkListFormDTO.java | 41 +++++++ .../epmet/dto/result/PcWorkListResultDTO.java | 107 ++++++++++++++++++ .../PatrolRoutineWorkController.java | 14 +++ .../service/PatrolRoutineWorkService.java | 12 ++ .../impl/PatrolRoutineWorkServiceImpl.java | 13 +++ 5 files changed, 187 insertions(+) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PcWorkListFormDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcWorkListResultDTO.java diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PcWorkListFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PcWorkListFormDTO.java new file mode 100644 index 0000000000..a946f5a58b --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PcWorkListFormDTO.java @@ -0,0 +1,41 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2022/1/4 2:00 下午 + * @DESC + */ +@Data +public class PcWorkListFormDTO implements Serializable { + + private static final long serialVersionUID = -3522636529743412120L; + + public interface PcWorkListForm{} + + @NotBlank(message = "staffId不能为空",groups = PcWorkListForm.class) + private String staffId; + + @NotBlank(message = "endTime不能为空",groups = PcWorkListForm.class) + private String endTime; + + private String startTime; + + @NotBlank(message = "agencyId不能为空",groups = PcWorkListForm.class) + private String agencyId; + + @NotBlank(message = "pageSize不能为空",groups = PcWorkListForm.class) + private Integer pageSize; + + @NotBlank(message = "pageNo不能为空",groups = PcWorkListForm.class) + private Integer pageNo; + + /** + * 是否分页,默认分页 + */ + private Boolean isPage = true; +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcWorkListResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcWorkListResultDTO.java new file mode 100644 index 0000000000..06a2d26cd5 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcWorkListResultDTO.java @@ -0,0 +1,107 @@ +package com.epmet.dto.result; + +import com.epmet.commons.tools.constant.NumConstant; +import lombok.Data; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * @Author zxc + * @DateTime 2022/1/4 2:06 下午 + * @DESC + */ +@Data +public class PcWorkListResultDTO implements Serializable { + + private static final long serialVersionUID = -2072009617522409407L; + + private Integer total; + + private List list; + + public PcWorkListResultDTO() { + this.total = NumConstant.ZERO; + this.list = new ArrayList<>(); + } + + @Data + class PcWorkListResult implements Serializable{ + + /** + * 事项名称 + */ + private String title; + + /** + * 事项类型码 + */ + private String workTypeCode; + + /** + * 事项类型名称 + */ + private String workTypeName; + + /** + * 有无异常 + */ + private String isNormal; + + /** + * 发生地点 + */ + private String happenAddress; + + /** + * 发生时间 返回返回格式化字符串,yyyy-MM-dd + */ + private String happenTime; + + /** + * 人员ID + */ + private String staffId; + + /** + * 人员姓名 + */ + private String staffName; + + /** + * 网格id + */ + private String gridId; + + /** + * 网格名字 + */ + private String gridName; + + /** + * 提交日期 返回返回格式化字符串,yyyy-MM-dd HH:mm:ss + */ + private String createdTime; + + /** + * 工作内容 + */ + private String workContent; + + public PcWorkListResult() { + this.title = ""; + this.workTypeCode = ""; + this.workTypeName = ""; + this.isNormal = ""; + this.happenAddress = ""; + this.happenTime = ""; + this.staffId = ""; + this.staffName = ""; + this.gridId = ""; + this.gridName = ""; + this.createdTime = ""; + this.workContent = ""; + } + } +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java index edcfe9e34f..52f8b2e59f 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java @@ -4,8 +4,10 @@ import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dto.form.PatrolRoutineWorkFormDTO; +import com.epmet.dto.form.PcWorkListFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.result.PatrolRoutineWorkResult; +import com.epmet.dto.result.PcWorkListResultDTO; import com.epmet.service.PatrolRoutineWorkService; import com.github.pagehelper.Page; import org.springframework.beans.factory.annotation.Autowired; @@ -56,4 +58,16 @@ public class PatrolRoutineWorkController { return new Result().ok(true); } + /** + * @Description 【网格员工作统计】例行工作列表 + * @param formDTO + * @author zxc + * @date 2022/1/4 2:18 下午 + */ + @PostMapping("pcwork/list") + public Result> pcWorkList(@RequestBody PcWorkListFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO, PcWorkListFormDTO.PcWorkListForm.class); + return new Result>().ok(gridUserWorkService.pcWorkList(formDTO)); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java index 8ece1a46c9..8b7b69473b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java @@ -19,11 +19,15 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.dto.form.PatrolRoutineWorkFormDTO; +import com.epmet.dto.form.PcWorkListFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.result.PatrolRoutineWorkResult; +import com.epmet.dto.result.PcWorkListResultDTO; import com.epmet.entity.PatrolRoutineWorkEntity; import com.github.pagehelper.Page; +import java.util.List; + /** * 巡查例行工作 * @@ -44,4 +48,12 @@ public interface PatrolRoutineWorkService extends BaseService listPage(PatrolQueryFormDTO formDTO); + + /** + * @Description 【网格员工作统计】例行工作列表 + * @param formDTO + * @author zxc + * @date 2022/1/4 2:18 下午 + */ + List pcWorkList(PcWorkListFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java index 5512389278..97f6b505d8 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java @@ -34,8 +34,10 @@ import com.epmet.dao.PatrolRoutineWorkDao; import com.epmet.dto.CustomerGridDTO; import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.dto.form.PatrolRoutineWorkFormDTO; +import com.epmet.dto.form.PcWorkListFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.result.PatrolRoutineWorkResult; +import com.epmet.dto.result.PcWorkListResultDTO; import com.epmet.entity.PatrolRoutineWorkEntity; import com.epmet.entity.PatrolRoutineWorkTypeEntity; import com.epmet.feign.EpmetAdminOpenFeignClient; @@ -147,6 +149,17 @@ public class PatrolRoutineWorkServiceImpl extends BaseServiceImpl baseDao.selectList(formDTO)); } + /** + * @Description 【网格员工作统计】例行工作列表 + * @param formDTO + * @author zxc + * @date 2022/1/4 2:18 下午 + */ + @Override + public List pcWorkList(PcWorkListFormDTO formDTO) { + return null; + } + /** * desc:递归遍历树形结构 构建pids 根节点pids 为空字符串 * From b97dca6629bd3a5a729c113a60675bdf792bd7cc Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Tue, 4 Jan 2022 16:40:37 +0800 Subject: [PATCH 03/16] emm --- .../com/epmet/dto/form/PcWorkListFormDTO.java | 14 +++--- .../epmet/dto/result/PcWorkListResultDTO.java | 10 ++--- .../PatrolRoutineWorkController.java | 4 +- .../com/epmet/dao/PatrolRoutineWorkDao.java | 4 ++ .../service/PatrolRoutineWorkService.java | 2 +- .../impl/PatrolRoutineWorkServiceImpl.java | 19 +++++++- .../resources/mapper/PatrolRoutineWorkDao.xml | 45 +++++++++++++++++++ 7 files changed, 83 insertions(+), 15 deletions(-) diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PcWorkListFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PcWorkListFormDTO.java index a946f5a58b..ebccb2c9d3 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PcWorkListFormDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PcWorkListFormDTO.java @@ -3,6 +3,7 @@ package com.epmet.dto.form; import lombok.Data; import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; import java.io.Serializable; /** @@ -17,7 +18,7 @@ public class PcWorkListFormDTO implements Serializable { public interface PcWorkListForm{} - @NotBlank(message = "staffId不能为空",groups = PcWorkListForm.class) +// @NotBlank(message = "staffId不能为空",groups = PcWorkListForm.class) private String staffId; @NotBlank(message = "endTime不能为空",groups = PcWorkListForm.class) @@ -25,13 +26,16 @@ public class PcWorkListFormDTO implements Serializable { private String startTime; - @NotBlank(message = "agencyId不能为空",groups = PcWorkListForm.class) - private String agencyId; + @NotBlank(message = "orgId不能为空",groups = PcWorkListForm.class) + private String orgId; - @NotBlank(message = "pageSize不能为空",groups = PcWorkListForm.class) + @NotBlank(message = "orgType不能为空",groups = PcWorkListForm.class) + private String orgType; + + @NotNull(message = "pageSize不能为空",groups = PcWorkListForm.class) private Integer pageSize; - @NotBlank(message = "pageNo不能为空",groups = PcWorkListForm.class) + @NotNull(message = "pageNo不能为空",groups = PcWorkListForm.class) private Integer pageNo; /** diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcWorkListResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcWorkListResultDTO.java index 06a2d26cd5..afc01d60c2 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcWorkListResultDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PcWorkListResultDTO.java @@ -27,7 +27,7 @@ public class PcWorkListResultDTO implements Serializable { } @Data - class PcWorkListResult implements Serializable{ + public static class PcWorkListResult{ /** * 事项名称 @@ -37,12 +37,12 @@ public class PcWorkListResultDTO implements Serializable { /** * 事项类型码 */ - private String workTypeCode; + private List workTypeCode; /** * 事项类型名称 */ - private String workTypeName; + private List workTypeName; /** * 有无异常 @@ -91,8 +91,8 @@ public class PcWorkListResultDTO implements Serializable { public PcWorkListResult() { this.title = ""; - this.workTypeCode = ""; - this.workTypeName = ""; + this.workTypeCode = new ArrayList<>(); + this.workTypeName = new ArrayList<>(); this.isNormal = ""; this.happenAddress = ""; this.happenTime = ""; diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java index 52f8b2e59f..5de2ecde8b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java @@ -65,9 +65,9 @@ public class PatrolRoutineWorkController { * @date 2022/1/4 2:18 下午 */ @PostMapping("pcwork/list") - public Result> pcWorkList(@RequestBody PcWorkListFormDTO formDTO){ + public Result pcWorkList(@RequestBody PcWorkListFormDTO formDTO){ ValidatorUtils.validateEntity(formDTO, PcWorkListFormDTO.PcWorkListForm.class); - return new Result>().ok(gridUserWorkService.pcWorkList(formDTO)); + return new Result().ok(gridUserWorkService.pcWorkList(formDTO)); } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/PatrolRoutineWorkDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/PatrolRoutineWorkDao.java index 9380056b67..d728cc82e2 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/PatrolRoutineWorkDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/PatrolRoutineWorkDao.java @@ -18,8 +18,10 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.form.PcWorkListFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.result.PatrolRoutineWorkResult; +import com.epmet.dto.result.PcWorkListResultDTO; import com.epmet.entity.PatrolRoutineWorkEntity; import org.apache.ibatis.annotations.Mapper; @@ -35,4 +37,6 @@ import java.util.List; public interface PatrolRoutineWorkDao extends BaseDao { List selectList(PatrolQueryFormDTO formDTO); + + List pcWorkList(PcWorkListFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java index 8b7b69473b..0eabbc8997 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java @@ -55,5 +55,5 @@ public interface PatrolRoutineWorkService extends BaseService pcWorkList(PcWorkListFormDTO formDTO); + PcWorkListResultDTO pcWorkList(PcWorkListFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java index 97f6b505d8..c44832771c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java @@ -48,6 +48,7 @@ import com.epmet.service.PatrolRoutineWorkService; import com.epmet.service.PatrolRoutineWorkTypeService; import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -156,8 +157,22 @@ public class PatrolRoutineWorkServiceImpl extends BaseServiceImpl pcWorkList(PcWorkListFormDTO formDTO) { - return null; + public PcWorkListResultDTO pcWorkList(PcWorkListFormDTO formDTO) { + PcWorkListResultDTO result = new PcWorkListResultDTO(); + List list; + if (formDTO.getIsPage()){ + PageInfo listPageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.pcWorkList(formDTO)); + result.setTotal(Integer.valueOf(String.valueOf(listPageInfo.getTotal()))); + list = listPageInfo.getList(); + }else { + list = baseDao.pcWorkList(formDTO); + result.setTotal(list.size()); + } + if (CollectionUtils.isEmpty(list)){ + return result; + } + result.setList(list); + return result; } /** diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml index d4445f2182..48137ecd50 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml @@ -38,5 +38,50 @@ AND m.DEL_FLAG = '0' + + + + + + + + + + + + + + + + From 58cb0cca9b08c2a02d2e910455e9e489a7fd2b9a Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Tue, 4 Jan 2022 17:17:34 +0800 Subject: [PATCH 04/16] =?UTF-8?q?=E3=80=90=E7=BD=91=E6=A0=BC=E5=91=98?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E7=BB=9F=E8=AE=A1=E3=80=91=E5=B7=A1=E6=9F=A5?= =?UTF-8?q?=E8=AE=B0=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 From 727c6305a1f405ad0c79d0b1a05c4534295905a6 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Tue, 4 Jan 2022 17:31:52 +0800 Subject: [PATCH 05/16] emm --- .../impl/PatrolRoutineWorkServiceImpl.java | 32 +++++++++++++++++++ .../resources/mapper/PatrolRoutineWorkDao.xml | 5 ++- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java index c44832771c..de2027df8e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java @@ -36,6 +36,7 @@ import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.dto.form.PatrolRoutineWorkFormDTO; import com.epmet.dto.form.PcWorkListFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO; +import com.epmet.dto.result.AllGridsByUserIdResultDTO; import com.epmet.dto.result.PatrolRoutineWorkResult; import com.epmet.dto.result.PcWorkListResultDTO; import com.epmet.entity.PatrolRoutineWorkEntity; @@ -60,6 +61,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 巡查例行工作 @@ -171,10 +173,40 @@ public class PatrolRoutineWorkServiceImpl extends BaseServiceImpl> workTypeResult = adminOpenFeignClient.dictTree("patrol_work_type"); + if (!workTypeResult.success()){ + throw new EpmetException("查询例行工作分类失败..."); + } + List gridIds = list.stream().map(m -> m.getGridId()).distinct().collect(Collectors.toList()); + Result> gridNamesResult = govOrgOpenFeignClient.getGridListByGridIds(gridIds); + if (!gridNamesResult.success()){ + throw new EpmetException("查询网格名字失败..."); + } + list.forEach(l -> { + l.setWorkTypeName(disposeWorkTypeCode(workTypeResult.getData(),l.getWorkTypeCode())); + gridNamesResult.getData().stream().filter(g -> l.getGridId().equals(g.getGridId())).forEach(g -> l.setGridName(g.getGridName())); + }); result.setList(list); return result; } + public List disposeWorkTypeCode(List workTypeList,List code){ + if (CollectionUtils.isEmpty(code)){ + return new ArrayList<>(); + } + List result = new ArrayList<>(); + code.forEach(c -> { + workTypeList.forEach(w1 -> { + w1.getChildren().forEach(w2 -> { + if (c.equals(w2.getId())){ + result.add(w1.getName() + "-" + w2.getName()); + } + }); + }); + }); + return result; + } + /** * desc:递归遍历树形结构 构建pids 根节点pids 为空字符串 * diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml index 48137ecd50..78cf718131 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml @@ -47,6 +47,7 @@ + @@ -61,8 +62,10 @@ w.USER_ID AS staffId, w.GRID_ID AS gridId, DATE_FORMAT(w.CREATED_TIME,'%Y-%m-%d %H:%i:%s') AS createdTime, - w.WORK_CONTENT AS workContent + w.WORK_CONTENT AS workContent, + s.REAL_NAME AS staffName FROM patrol_routine_work w + INNER JOIN customer_staff s ON (s.USER_ID = w.USER_ID AND s.DEL_FLAG = 0) WHERE w.DEL_FLAG = 0 AND w.USER_ID = #{staffId} From 7c1f10a428eb6c1879153a708ba6da5097fe2a61 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Wed, 5 Jan 2022 09:11:32 +0800 Subject: [PATCH 06/16] emm --- .../com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java index de2027df8e..0859689498 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java @@ -173,7 +173,7 @@ public class PatrolRoutineWorkServiceImpl extends BaseServiceImpl> workTypeResult = adminOpenFeignClient.dictTree("patrol_work_type"); + Result> workTypeResult = adminOpenFeignClient.dictTree(DictTypeEnum.PATROL_WORK_TYPE.getCode()); if (!workTypeResult.success()){ throw new EpmetException("查询例行工作分类失败..."); } From 6627e284863e47ab362010ce6b6166c7d53446dd Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 5 Jan 2022 09:33:07 +0800 Subject: [PATCH 07/16] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/StaffPatrolRecordServiceImpl.java | 45 +++++++++++++------ 1 file changed, 31 insertions(+), 14 deletions(-) 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 860aa91c3d..bcb27c0410 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 @@ -1,13 +1,17 @@ package com.epmet.service.impl; +import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.rocketmq.messages.StaffPatrolMQMsg; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.redis.RedisKeys; +import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.Result; @@ -42,9 +46,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; /** @@ -73,6 +75,8 @@ public class StaffPatrolRecordServiceImpl extends BaseServiceImpl 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("获取网格基础信息失败......"); + //2.查询网格信息并赋值 + Map map = new HashMap<>(); + for (PcworkRecordListResultDTO.StaffPatrol r : result.getList()) { + if (map.containsKey(r.getGridId())) { + r.setGridName(map.get(r.getGridId()).getGridName()); + continue; + } + String redisKey = RedisKeys.getGridInfoKey(r.getGridId()); + Map gridCache = redisUtils.hGetAll(redisKey); + if (gridCache != null && gridCache.size() > 0) { + // 直接取缓存中的 + CustomerGridDTO dto = BeanUtil.mapToBean(gridCache, CustomerGridDTO.class, true); + r.setGridName(dto.getGridName()); + map.put(r.getGridId(), dto); + } else { + CustomerGridFormDTO form = new CustomerGridFormDTO(); + form.setGridId(r.getGridId()); + Result resultGrid = govOrgOpenFeignClient.getGridBaseInfoByGridId(form); + if (!resultGrid.success()) { + throw new RenException("调用org服务获取网格基础信息失败......"); + } + r.setGridName(resultGrid.getData().getGridName()); + map.put(r.getGridId(), resultGrid.getData()); + } } - //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; From f0d22865c9bd8f9e20fc7ab0d92c018eb2babc00 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Wed, 5 Jan 2022 09:40:05 +0800 Subject: [PATCH 08/16] =?UTF-8?q?=E5=A4=87=E6=B3=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/impl/PatrolRoutineWorkServiceImpl.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java index 0859689498..e2ff4c439b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java @@ -190,6 +190,13 @@ public class PatrolRoutineWorkServiceImpl extends BaseServiceImpl disposeWorkTypeCode(List workTypeList,List code){ if (CollectionUtils.isEmpty(code)){ return new ArrayList<>(); From 0f496b5b54a73d6fdda1aa218bbfd2d2e56f0b13 Mon Sep 17 00:00:00 2001 From: wangxianzhang Date: Wed, 5 Jan 2022 09:53:08 +0800 Subject: [PATCH 09/16] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=201.PC?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E7=AB=AF=E6=9F=A5=E8=AF=A2=E7=BD=91=E6=A0=BC?= =?UTF-8?q?=E5=91=98=E6=95=B0=E6=8D=AE=E7=BB=9F=E8=AE=A1=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StaffPatrolRecordDailyResultDTO.java | 21 ++++ .../form/GridMemberDataAnalysisFromDTO.java | 7 ++ .../GridMemberDataAnalysisResultDTO.java | 7 ++ .../controller/GovOrgController.java | 22 ++++ .../FactGridMemberStatisticsDailyDao.java | 20 ++++ .../StatsStaffPatrolRecordDailyDao.java | 13 +++ .../dataaggre/service/AggreGridService.java | 13 +++ .../service/datastats/DataStatsService.java | 12 +++ .../datastats/impl/DataStatsServiceImpl.java | 42 ++++++-- .../StatsStaffPatrolRecordDailyService.java | 11 ++ ...tatsStaffPatrolRecordDailyServiceImpl.java | 5 + .../service/impl/AggreGridServiceImpl.java | 102 ++++++++++++++++-- .../FactGridMemberStatisticsDailyDao.xml | 49 +++++++++ .../StatsStaffPatrolRecordDailyDao.xml | 21 ++++ 14 files changed, 330 insertions(+), 15 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffPatrolRecordDailyResultDTO.java diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffPatrolRecordDailyResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffPatrolRecordDailyResultDTO.java new file mode 100644 index 0000000000..be6f619fcc --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffPatrolRecordDailyResultDTO.java @@ -0,0 +1,21 @@ +package com.epmet.dataaggre.dto.epmetuser.result; + +import lombok.Data; + +/** + * @ClassName StaffPatrolRecordDailyResultDTO + * @Description 工作人员巡查记录按日统计,查询结果 + * @Author wangxianzhang + * @Date 2022/1/4 4:08 下午 + */ +@Data +public class StaffPatrolRecordDailyResultDTO { + + private String staffId; + private String gridId; + + private int patrolTimes; + private int totalTime; + private int patrolRoutineWorkTimes; + +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/GridMemberDataAnalysisFromDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/GridMemberDataAnalysisFromDTO.java index 1803db4c96..59be0d83c3 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/GridMemberDataAnalysisFromDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/GridMemberDataAnalysisFromDTO.java @@ -3,12 +3,14 @@ package com.epmet.dataaggre.dto.govorg.form; import lombok.Data; import javax.validation.constraints.NotBlank; +import java.util.Date; import java.util.List; @Data public class GridMemberDataAnalysisFromDTO { public interface listGridMemberDatas {} + public interface listGridMemberDatas4PcWork {} private List gridIds; @@ -19,4 +21,9 @@ public class GridMemberDataAnalysisFromDTO { private String sort; private Integer pageNo = 1; private Integer pageSize = 10; + + @NotBlank(message = "请选择组织", groups = { listGridMemberDatas4PcWork.class }) + private String agencyId; + private Date startTime; + private Date endTime; } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java index b431cfafab..4da050970e 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java @@ -9,7 +9,9 @@ public class GridMemberDataAnalysisResultDTO { private String staffId; private String staffName; private String orgName; + //private String gridName; + // 项目议题等 private Integer projectCount; private Integer issueToProjectCount; private Integer closedIssueCount; @@ -17,4 +19,9 @@ public class GridMemberDataAnalysisResultDTO { private Integer projectTransferCount; private Integer projectClosedCount; + // 巡查 + private int patrolTimes; + private int totalTime; + private int patrolRoutineWorkTimes; + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java index 14500cc2ab..97c9c4429e 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java @@ -5,6 +5,7 @@ import com.epmet.commons.tools.annotation.RequirePermission; import com.epmet.commons.tools.enums.RequirePermissionEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.user.LoginUserUtil; import com.epmet.commons.tools.utils.Result; @@ -23,7 +24,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; +import javax.validation.constraints.NotBlank; import java.util.ArrayList; +import java.util.Date; import java.util.List; /** @@ -201,4 +204,23 @@ public class GovOrgController { return new Result().ok(govOrgService.getGridInfo(gridId)); } + /** + * pc 工作端,网格员巡查统计 + * @param input + * @return + */ + @PostMapping("pcwork/gridmember-analysis") + public Result getGridMemberAnalysis4PcWork(@RequestBody GridMemberDataAnalysisFromDTO input) { + ValidatorUtils.validateEntity(input, GridMemberDataAnalysisFromDTO.listGridMemberDatas4PcWork.class); + + String agencyId = input.getAgencyId(); + Date startTime = input.getStartTime(); + Date endTime = input.getEndTime(); + Integer pageNo = input.getPageNo(); + Integer pageSize = input.getPageSize(); + + PageData page = aggreGridService.getGridMemberDataAnalysis4PcWork(agencyId, pageNo, pageSize, startTime, endTime); + return new Result().ok(page); + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/FactGridMemberStatisticsDailyDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/FactGridMemberStatisticsDailyDao.java index a8ea0bcc94..435d92a2f3 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/FactGridMemberStatisticsDailyDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/FactGridMemberStatisticsDailyDao.java @@ -52,4 +52,24 @@ public interface FactGridMemberStatisticsDailyDao extends BaseDao listGridMemberDataStatsAccumulate(@Param("pids") String pids, + @Param("endDateID") String endDateID); + + /** + * 按照时间段查询网格员数据统计增量值 + * @param pids + * @param startDateID + * @param endDateID + * @return + */ + List listGridMemberDataStatsIncr(@Param("pids") String pids, + @Param("startDateID") String startDateID, + @Param("endDateID") String endDateID); } \ No newline at end of file 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 index 8be4c4c34e..d64a52ac27 100644 --- 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 @@ -22,6 +22,7 @@ import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dataaggre.dto.datastats.form.CustomerDataManageFormDTO; import com.epmet.dataaggre.dto.datastats.result.CustomerDataManageResultDTO; import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult; +import com.epmet.dataaggre.dto.epmetuser.result.StaffPatrolRecordDailyResultDTO; import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -51,4 +52,16 @@ public interface StatsStaffPatrolRecordDailyDao extends BaseDao patrolList(CustomerDataManageFormDTO formDTO); + + /** + * 工作人员巡查记录,按日统计,查询 + * @param userIds + * @param startDateID + * @param endDateID + * @return + */ + List listStaffPatrolRecordDailyAnalysis(@Param("gridPids") String gridPids, + @Param("userIds") List userIds, + @Param("startDateId") String startDateID, + @Param("endDateID") String endDateID); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/AggreGridService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/AggreGridService.java index 3702bbb319..7c18dbd819 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/AggreGridService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/AggreGridService.java @@ -1,7 +1,9 @@ package com.epmet.dataaggre.service; +import com.epmet.commons.tools.page.PageData; import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO; +import java.util.Date; import java.util.List; /** @@ -17,4 +19,15 @@ public interface AggreGridService { * @date 2021.07.05 11:17 */ List getGridMemberDataAnalysis(List gridIds, String searchedStaffName, String currStaffId, String month, String sort, Integer pageNo, Integer pageSize); + + /** + * 网格员巡查统计查询 pcwork端 + * @param agencyId + * @param pageNo + * @param pageSize + * @param startTime + * @param endTime + * @return + */ + PageData getGridMemberDataAnalysis4PcWork(String agencyId, Integer pageNo, Integer pageSize, Date startTime, Date endTime); } 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 de584839e2..2fe6e6de53 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 @@ -13,6 +13,7 @@ import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO; import javax.servlet.http.HttpServletResponse; import java.text.ParseException; +import java.util.Date; import java.util.List; /** @@ -260,4 +261,15 @@ public interface DataStatsService { * @author sun */ List getProjectMonthIncr(ProjectTotalFormDTO formDTO); + + /** + * 查询网格员项目统计数据4 pcwork + * @param pids 组织PIDS + * @param pageNo + * @param pageSize + * @param startDateID 查询起始时间(匹配统计表的dateId列) + * @param endDateID 查询结束时间(匹配统计表的dateId列) + * @return + */ + List getGridMemberIssueProjectStats4PcWork(String pids, Integer pageNo, Integer pageSize, String startDateID, String endDateID); } 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 ac426b81d7..25a7b37875 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 @@ -3,9 +3,12 @@ import com.alibaba.fastjson.JSON; 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.exception.RenException; -import com.epmet.commons.tools.utils.ConvertUtils; + import com.epmet.commons.tools.enums.OrgLevelEnum; + import com.epmet.commons.tools.exception.EpmetErrorCode; + import com.epmet.commons.tools.exception.EpmetException; + import com.epmet.commons.tools.exception.RenException; + import com.epmet.commons.tools.feign.ResultDataResolver; + import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.dataaggre.constant.DataSourceConstant; @@ -29,12 +32,16 @@ import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO; 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.excel.CustomerDataManageExcel; + import com.epmet.dataaggre.entity.govorg.CustomerAgencyEntity; + import com.epmet.dataaggre.excel.CustomerDataManageExcel; 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; + import com.epmet.dataaggre.service.govorg.GovOrgService; + import com.epmet.dataaggre.service.opercrm.CustomerRelation; + import com.epmet.dto.CustomerAgencyDTO; + import com.epmet.feign.GovOrgOpenFeignClient; + import com.github.pagehelper.PageHelper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; @@ -59,7 +66,7 @@ import java.util.stream.Collectors; @Service @DataSource(DataSourceConstant.DATA_STATISTICAL) @Slf4j -public class DataStatsServiceImpl implements DataStatsService { +public class DataStatsServiceImpl implements DataStatsService, ResultDataResolver { @Autowired private DataStatsDao dataStatsDao; @Autowired @@ -71,7 +78,8 @@ public class DataStatsServiceImpl implements DataStatsService { private FactGridMemberStatisticsDailyDao factGridMemberStatisticsDailyDao; @Autowired private StatsStaffPatrolRecordDailyService statsStaffPatrolRecordDailyService; - + @Autowired + private GovOrgService govOrgService; /** * @Param formDTO @@ -2141,5 +2149,21 @@ public class DataStatsServiceImpl implements DataStatsService { return dataStatsDao.getProjectMonthIncr(formDTO); } - + @Override + public List getGridMemberIssueProjectStats4PcWork(String pids, Integer pageNo, Integer pageSize, String startDateID, String endDateID) { + + boolean isStartDateIdBlank = StringUtils.isBlank(startDateID); + boolean isEndDateIdBlank = StringUtils.isBlank(endDateID); + + if (isStartDateIdBlank && !isEndDateIdBlank) { + // 查询截止时间的累计值,直接查询表里的total即可 + PageHelper.startPage(pageNo, pageSize); + return factGridMemberStatisticsDailyDao.listGridMemberDataStatsAccumulate(pids, endDateID); + } else if (!isStartDateIdBlank && !isEndDateIdBlank) { + // 查询时间段内的增量,需要使用表中的增量列计算 + return factGridMemberStatisticsDailyDao.listGridMemberDataStatsIncr(pids, startDateID, endDateID); + } else { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "【pcwork查询网格员数据统计列表】传入时间条件有误"); + } + } } 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 index 70afc1e944..8a625b0e72 100644 --- 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 @@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.dataaggre.dto.datastats.form.CustomerDataManageFormDTO; import com.epmet.dataaggre.dto.datastats.result.CustomerDataManageResultDTO; import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult; +import com.epmet.dataaggre.dto.epmetuser.result.StaffPatrolRecordDailyResultDTO; import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; import java.util.List; @@ -47,4 +48,14 @@ public interface StatsStaffPatrolRecordDailyService extends BaseService patrolList(CustomerDataManageFormDTO formDTO); + + /** + * 查询工作人员巡查记录按日统计 + * @param gridPids 记录所属的网格的pids + * @param userIds + * @param startDateID + * @param endDateID + * @return + */ + List listStaffPatrolRecordDailyAnalysis(String gridPids, List userIds, 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 index ccfe71e399..7fd617cee3 100644 --- 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 @@ -7,6 +7,7 @@ import com.epmet.dataaggre.dao.epmetuser.StatsStaffPatrolRecordDailyDao; import com.epmet.dataaggre.dto.datastats.form.CustomerDataManageFormDTO; import com.epmet.dataaggre.dto.datastats.result.CustomerDataManageResultDTO; import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult; +import com.epmet.dataaggre.dto.epmetuser.result.StaffPatrolRecordDailyResultDTO; import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService; import lombok.extern.slf4j.Slf4j; @@ -47,4 +48,8 @@ public class StatsStaffPatrolRecordDailyServiceImpl extends BaseServiceImpl listStaffPatrolRecordDailyAnalysis(String gridPids, List userIds, String startDateID, String endDateID) { + return baseDao.listStaffPatrolRecordDailyAnalysis(gridPids, userIds, startDateID, endDateID); + } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java index d2fc60ad35..48f1a811b7 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java @@ -1,19 +1,25 @@ package com.epmet.dataaggre.service.impl; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.EpmetException; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.redis.common.CustomerOrgRedis; +import com.epmet.commons.tools.redis.common.bean.GridInfoCache; +import com.epmet.commons.tools.utils.DateUtils; +import com.epmet.dataaggre.dto.epmetuser.result.StaffPatrolRecordDailyResultDTO; import com.epmet.dataaggre.dto.govorg.CustomerGridDTO; import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO; +import com.epmet.dataaggre.entity.govorg.CustomerAgencyEntity; import com.epmet.dataaggre.service.AggreGridService; import com.epmet.dataaggre.service.datastats.DataStatsService; +import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService; import com.epmet.dataaggre.service.govorg.GovOrgService; -import org.apache.commons.collections4.CollectionUtils; +import com.github.pagehelper.PageInfo; +import com.google.common.collect.Lists; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; +import java.util.*; @Service public class AggreGridServiceImpl implements AggreGridService { @@ -24,6 +30,9 @@ public class AggreGridServiceImpl implements AggreGridService { @Autowired private DataStatsService dataStatsService; + @Autowired + private StatsStaffPatrolRecordDailyService statsStaffPatrolRecordDailyService; + @Override public List getGridMemberDataAnalysis( List gridIds, @@ -48,4 +57,85 @@ public class AggreGridServiceImpl implements AggreGridService { return records; } + @Override + public PageData getGridMemberDataAnalysis4PcWork(String agencyId, Integer pageNo, Integer pageSize, Date startTime, Date endTime) { + + // 计算出开始dateId和结束endId + String startDateID = DateUtils.format(startTime, DateUtils.DATE_PATTERN_YYYYMMDD); + String endDateID = DateUtils.format(endTime, DateUtils.DATE_PATTERN_YYYYMMDD); + + // 拿到组织pids,含自身 + String pids = getPidsByAgencyId(agencyId); + + // 一.查询网格员数据统计相关信息 + List datas = dataStatsService.getGridMemberIssueProjectStats4PcWork(pids, pageNo, pageSize, startDateID, endDateID); + long total = new PageInfo<>(datas).getTotal(); + + // 二.匹配用户巡查,例行工作数据 + int partSize = 100; + + // 将数据列表结构化 > + HashMap> structedData = new HashMap<>(); + + for (GridMemberDataAnalysisResultDTO data : datas) { + // 填充gridName + GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(data.getGridId()); + Optional.ofNullable(gridInfo).ifPresent((d) -> data.setOrgName(d.getGridName())); + + // 生成结构化map + Map gridAndData = structedData.get(data.getStaffId()); + if (gridAndData == null) { + HashMap gat = new HashMap<>(); + gat.put(data.getGridId(), data); + structedData.put(data.getStaffId(), gat); + } else { + Map gat = structedData.get(data.getStaffId()); + gat.put(data.getGridId(), data); + } + } + + ArrayList userIds = new ArrayList<>(structedData.keySet()); + + // 分片 + List> userIdsParts = Lists.partition(userIds, partSize); + + for (List userIdsPart : userIdsParts) { + List patrolDatas = statsStaffPatrolRecordDailyService.listStaffPatrolRecordDailyAnalysis(pids, userIdsPart, startDateID, endDateID); + for (StaffPatrolRecordDailyResultDTO d : patrolDatas) { + Map gridAndData = structedData.get(d.getStaffId()); + + if (gridAndData != null) { + GridMemberDataAnalysisResultDTO data = gridAndData.get(d.getGridId()); + if (data != null) { + data.setPatrolTimes(d.getPatrolTimes()); + data.setTotalTime(d.getTotalTime()); + data.setPatrolRoutineWorkTimes(d.getPatrolRoutineWorkTimes()); + } + } + } + } + + return new PageData(datas, total); + } + + /** + * 使用agencyId,获取pids(agencyPids:agencyId) + * @param agencyId + * @return + */ + private String getPidsByAgencyId(String agencyId) { + CustomerAgencyEntity agencyInfo = govOrgService.getAgencyInfo(agencyId); + + if (agencyInfo == null) { + String errorMsg = "【网格员数据统计查询pcwork】查询组织信息返回为null"; + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg); + } + + String pidsAndAgencyIdPath = agencyInfo.getPids().concat(":").concat(agencyId); + if (pidsAndAgencyIdPath.startsWith(":")) { + pidsAndAgencyIdPath = pidsAndAgencyIdPath.replaceFirst(":", ""); + } + + return pidsAndAgencyIdPath; + } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/FactGridMemberStatisticsDailyDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/FactGridMemberStatisticsDailyDao.xml index ffec0be996..09d1304d35 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/FactGridMemberStatisticsDailyDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/FactGridMemberStatisticsDailyDao.xml @@ -131,5 +131,54 @@ and member.DEL_FLAG = 0 + + + + \ No newline at end of file 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 index e77b01af94..82ce39afc2 100644 --- 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 @@ -57,4 +57,25 @@ GROUP BY t.grid_id, t.staffId + + From 3ed863a176aa5c9b003a0260bcf24d357df79e05 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 5 Jan 2022 10:24:43 +0800 Subject: [PATCH 10/16] =?UTF-8?q?/heart/resi/act/list=E6=B7=BB=E5=8A=A0act?= =?UTF-8?q?Type?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/result/resi/ResiActInfoResultDTO.java | 5 +++++ .../src/main/resources/mapper/ActInfoDao.xml | 15 ++++++++++----- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActInfoResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActInfoResultDTO.java index c842cef5e4..01d783e0bd 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActInfoResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActInfoResultDTO.java @@ -87,4 +87,9 @@ public class ResiActInfoResultDTO implements Serializable { *用户报名状态(no_signed_up: 未报名,signed_up: 已报名) */ private String signupFlag; + + /** + * 活动类型 爱心活动heart 联建活动party + */ + private String actType; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml index 796fe5cd93..799418736d 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml @@ -63,7 +63,8 @@ i.ACT_QUOTA actQuota, IFNULL(c.signupNum, 0) signupNum, -- 已报名人数 'signing_up' AS actCurrentState, -- 活动状态:报名中,未报满 - IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag + IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag, + i.ACT_TYPE as actType FROM act_info i LEFT JOIN act_user_relation u ON i.ID = u.ACT_ID AND U.DEL_FLAG = '0' AND u.`STATUS` != 'refused' AND u.`STATUS` != 'canceled' AND u.USER_ID = #{userId} LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID @@ -89,7 +90,8 @@ i.ACT_QUOTA actQuota, IFNULL(c.signupNum, 0) signupNum, -- 已报名人数 'enough' AS actCurrentState, -- 活动状态:报名中,已报满 - IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag + IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag, + i.ACT_TYPE as actType FROM act_info i LEFT JOIN act_user_relation u ON i.ID = u.ACT_ID AND U.DEL_FLAG = '0' AND u.`STATUS` != 'refused' AND u.`STATUS` != 'canceled' AND u.USER_ID = #{userId} LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID @@ -116,7 +118,8 @@ i.ACT_QUOTA actQuota, IFNULL(c.signupNum, 0) signupNum, -- 已报名人数 'end_sign_up' AS actCurrentState, -- 活动状态:未开始 - IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag + IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag, + i.ACT_TYPE as actType FROM act_info i LEFT JOIN act_user_relation u ON i.ID = u.ACT_ID AND U.DEL_FLAG = '0' AND u.`STATUS` != 'refused' AND u.`STATUS` != 'canceled' AND u.USER_ID = #{userId} LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID @@ -142,7 +145,8 @@ i.ACT_QUOTA actQuota, IFNULL(c.signupNum, 0) signupNum, -- 已报名人数 'in_progress' AS actCurrentState, -- 活动状态:进行中 - IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag + IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag, + i.ACT_TYPE as actType FROM act_info i LEFT JOIN act_user_relation u ON i.ID = u.ACT_ID AND U.DEL_FLAG = '0' AND u.`STATUS` != 'refused' AND u.`STATUS` != 'canceled' AND u.USER_ID = #{userId} LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID @@ -173,7 +177,8 @@ when i.ACT_STATUS = 'canceled' then 'canceled' end as actCurrentState, -- 活动状态:已结束、已取消 - IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag + IF(u.USER_ID = #{userId},'signed_up','no_signed_up') as signupFlag, + i.ACT_TYPE as actType FROM act_info i LEFT JOIN act_user_relation u ON i.ID = u.ACT_ID AND U.DEL_FLAG = '0' AND u.`STATUS` != 'refused' AND u.`STATUS` != 'canceled' AND u.USER_ID = #{userId} LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID From 57d1619f215d596616110584195536e1fd420b39 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 5 Jan 2022 10:26:32 +0800 Subject: [PATCH 11/16] =?UTF-8?q?/heart/resi/act/actlookback=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0actType?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/result/resi/ResiLookBackActResultDTO.java | 5 +++++ .../src/main/resources/mapper/ActInfoDao.xml | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLookBackActResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLookBackActResultDTO.java index fc7d7d39e7..986bcb06c5 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLookBackActResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLookBackActResultDTO.java @@ -66,4 +66,9 @@ public class ResiLookBackActResultDTO implements Serializable { * 活动状态:(已结束:finished;) */ private String actCurrentState; + + /** + * 活动类型 爱心活动heart 联建活动party + */ + private String actType; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml index 799418736d..56e7dd02d2 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml @@ -354,7 +354,8 @@ a.actStartTime, a.actEndTime, a.actAddress, - a.actCurrentState + a.actCurrentState, + a.actType FROM( SELECT i.ID actId, @@ -365,7 +366,8 @@ DATE_FORMAT(i.ACT_END_TIME,'%Y-%m-%d %H:%i') actEndTime, i.ACT_ADDRESS actAddress, 'finished' actCurrentState, - i.CREATED_TIME + i.CREATED_TIME, + i.ACT_TYPE as actType FROM act_info i LEFT JOIN act_live_rec r ON r.ACT_ID = i.ID AND r.DEL_FLAG = '0' WHERE i.DEL_FLAG = '0' From 4b058ff2e5887720019a7c52bb93333ba9cfc4e0 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 5 Jan 2022 10:29:10 +0800 Subject: [PATCH 12/16] =?UTF-8?q?/resi/act/list/auditing=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?actType?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/dto/result/resi/ResiMyActResultDTO.java | 5 +++++ .../src/main/resources/mapper/ActInfoDao.xml | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiMyActResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiMyActResultDTO.java index b477f6d513..5eb0d2b8a4 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiMyActResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiMyActResultDTO.java @@ -82,4 +82,9 @@ public class ResiMyActResultDTO implements Serializable { * 活动当前状态(审核中auditing,审核通过passed,审核不通过refused,已结束canceld) */ private String actCurrentState; + + /** + * 活动类型 爱心活动heart 联建活动party + */ + private String actType; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml index 56e7dd02d2..e0444a82d3 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml @@ -202,7 +202,8 @@ i.ACT_QUOTA_CATEGORY actQuotaCategory, -- 活动名额类型(true:固定名额(1) false: 不限制名额(0)) i.ACT_QUOTA actQuota, IFNULL(c.signupNum, 0) signupNum, -- 已报名人数 - 'auditing' AS actCurrentState -- 活动状态 + 'auditing' AS actCurrentState, -- 活动状态 + i.act_type as actType FROM act_user_relation u LEFT JOIN act_info i ON i.ID = u.ACT_ID LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID WHERE i.DEL_FLAG = '0' From d3473ccb4222f8573a7978c1c02e6aa6772854d1 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 5 Jan 2022 10:39:04 +0800 Subject: [PATCH 13/16] =?UTF-8?q?=E6=B7=BB=E5=8A=A0actType?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../result/resi/ResiInProgressActResultDTO.java | 5 +++++ .../dto/result/resi/ResiLatestActResultDTO.java | 5 +++++ .../src/main/resources/mapper/ActInfoDao.xml | 15 ++++++++++----- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiInProgressActResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiInProgressActResultDTO.java index b6905711fe..055e35663d 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiInProgressActResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiInProgressActResultDTO.java @@ -41,4 +41,9 @@ public class ResiInProgressActResultDTO implements Serializable { * 标题 */ private String title; + + /** + * 活动类型 爱心活动heart 联建活动party + */ + private String actType; } diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLatestActResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLatestActResultDTO.java index 1bf6b8124e..c0a4aadbf0 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLatestActResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLatestActResultDTO.java @@ -82,4 +82,9 @@ public class ResiLatestActResultDTO implements Serializable { * 活动状态:(报名中:signing_up;已报满:enough;截止报名: end_sign_up; 已开始: in_progress;) */ private String actCurrentState; + + /** + * 活动类型 爱心活动heart 联建活动party + */ + private String actType; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml index e0444a82d3..f2054d890f 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml @@ -228,7 +228,8 @@ i.ACT_QUOTA_CATEGORY actQuotaCategory, -- 活动名额类型(true:固定名额(1) false: 不限制名额(0)) i.ACT_QUOTA actQuota, IFNULL(c.signupNum, 0) signupNum, -- 已报名人数 - 'passed' AS actCurrentState -- 活动状态 + 'passed' AS actCurrentState, -- 活动状态 + i.act_type as actType FROM act_user_relation u LEFT JOIN act_info i ON i.ID = u.ACT_ID LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID WHERE i.DEL_FLAG = '0' @@ -253,7 +254,8 @@ i.ACT_QUOTA_CATEGORY actQuotaCategory, -- 活动名额类型(true:固定名额(1) false: 不限制名额(0)) i.ACT_QUOTA actQuota, IFNULL(c.signupNum, 0) signupNum, -- 已报名人数 - 'refused' AS actCurrentState -- 活动状态 + 'refused' AS actCurrentState, -- 活动状态 + i.act_type as actType FROM act_user_relation u LEFT JOIN act_info i ON i.ID = u.ACT_ID LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID WHERE i.DEL_FLAG = '0' @@ -278,7 +280,8 @@ i.ACT_QUOTA_CATEGORY actQuotaCategory, -- 活动名额类型(true:固定名额(1) false: 不限制名额(0)) i.ACT_QUOTA actQuota, IFNULL(c.signupNum, 0) signupNum, -- 已报名人数 - 'canceld' AS actCurrentState -- 活动状态 + 'canceld' AS actCurrentState, -- 活动状态 + i.act_type as actType FROM act_user_relation u LEFT JOIN act_info i ON i.ID = u.ACT_ID LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID WHERE i.DEL_FLAG = '0' @@ -315,7 +318,8 @@ then 'end_sign_up' when NOW() then 'in_progress' - end as actCurrentState + end as actCurrentState, + i.act_type as actType FROM act_info i LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID WHERE i.DEL_FLAG = '0' @@ -335,7 +339,8 @@ '您报名的活动即将开始' ELSE '活动进行中' - END title + END title, + i.act_type as actType FROM act_info i LEFT JOIN act_user_relation r ON i.ID = r.ACT_ID WHERE i.DEL_FLAG = '0' AND r.DEL_FLAG = '0' From c0bc7a7a8f0f0475619eaa95f172578a2e6ed1a7 Mon Sep 17 00:00:00 2001 From: wangxianzhang Date: Wed, 5 Jan 2022 10:48:09 +0800 Subject: [PATCH 14/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A=201.=E7=BD=91?= =?UTF-8?q?=E6=A0=BC=E5=91=98=E5=B7=A1=E6=9F=A5=EF=BC=8C=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?mobile=E7=9A=84=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GridMemberDataAnalysisResultDTO.java | 1 + .../data-aggregator-server/pom.xml | 20 +++++++ .../controller/GovOrgController.java | 52 +++++++++++++++++++ .../service/epmetuser/EpmetUserService.java | 8 +++ .../epmetuser/impl/EpmetUserServiceImpl.java | 6 +++ .../service/impl/AggreGridServiceImpl.java | 20 +++++++ 6 files changed, 107 insertions(+) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java index 4da050970e..0bd54027fa 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java @@ -7,6 +7,7 @@ public class GridMemberDataAnalysisResultDTO { private String gridId; private String staffId; + private String mobile; private String staffName; private String orgName; //private String gridName; diff --git a/epmet-module/data-aggregator/data-aggregator-server/pom.xml b/epmet-module/data-aggregator/data-aggregator-server/pom.xml index 06f591c6c0..b26bfa373b 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/pom.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/pom.xml @@ -82,6 +82,26 @@ 2.0.0 compile + + + com.alibaba + easyexcel + 3.0.3 + + diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java index 97c9c4429e..6cb9704c5f 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java @@ -1,5 +1,6 @@ package com.epmet.dataaggre.controller; +import com.alibaba.excel.EasyExcel; import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.annotation.RequirePermission; import com.epmet.commons.tools.enums.RequirePermissionEnum; @@ -223,4 +224,55 @@ public class GovOrgController { return new Result().ok(page); } + /** + * pc 工作端,网格员巡查统计,导出excel + * @param input + * @return + */ + @PostMapping("pcwork/gridmember-analysis/export") + public Result exportGridMemberAnalysis4PcWork(@RequestBody GridMemberDataAnalysisFromDTO input) { + //ValidatorUtils.validateEntity(input, GridMemberDataAnalysisFromDTO.listGridMemberDatas4PcWork.class); + // + //String agencyId = input.getAgencyId(); + //Date startTime = input.getStartTime(); + //Date endTime = input.getEndTime(); + // + //int pageNo = 0; + //int pageSize = 1000; + // + //PageData page; + //do { + // page = aggreGridService.getGridMemberDataAnalysis4PcWork(agencyId, pageNo, pageSize, startTime, endTime); + // List pageList = page.getList(); + // + // EasyExcel + // + // + //} while (page.getList().size() == pageSize); + + return null; + } + + /** + * 网格员数据分析excel导出bean + */ + public class GridMemberDataAnalysisExcelExportBean { + private String staffName; + private String orgName; + + // 项目议题等 + private Integer projectCount; + private Integer issueToProjectCount; + private Integer closedIssueCount; + private Integer projectResponseCount; + private Integer projectTransferCount; + private Integer projectClosedCount; + + // 巡查 + private int patrolTimes; + private int totalTime; + private int patrolRoutineWorkTimes; + } + + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java index 6979f5d8b4..a1509063c1 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java @@ -6,6 +6,7 @@ import com.epmet.dataaggre.dto.govorg.form.OrgStaffListFormDTO; import com.epmet.dataaggre.dto.govorg.form.StaffDetailV2FormDTO; import com.epmet.dataaggre.dto.govorg.result.GridStaffResultDTO; import com.epmet.dataaggre.dto.govproject.result.ProjectAnalysisResultDTO; +import com.epmet.dataaggre.entity.epmetuser.CustomerStaffEntity; import com.epmet.dto.IcResiUserDTO; import com.epmet.dto.UserBaseInfoDTO; @@ -167,4 +168,11 @@ public interface EpmetUserService { * @author sun */ List getHomeUserList(String homeId, String icUserId); + + /** + * 使用staffId批量查询staff信息 + * @param userIdsPart + * @return + */ + List listStaffsByIds(List userIdsPart); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java index c38bf062a9..815b196c51 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java @@ -735,5 +735,11 @@ public class EpmetUserServiceImpl implements EpmetUserService { return icResiUserDao.getHomeUserList(homeId, icUserId); } + @Override + public List listStaffsByIds(List userIds) { + LambdaQueryWrapper query = new LambdaQueryWrapper<>(); + query.in(CustomerStaffEntity::getUserId, userIds); + return customerStaffDao.selectList(query); + } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java index 48f1a811b7..7b2e56ff2f 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java @@ -9,9 +9,11 @@ import com.epmet.commons.tools.utils.DateUtils; import com.epmet.dataaggre.dto.epmetuser.result.StaffPatrolRecordDailyResultDTO; import com.epmet.dataaggre.dto.govorg.CustomerGridDTO; import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO; +import com.epmet.dataaggre.entity.epmetuser.CustomerStaffEntity; import com.epmet.dataaggre.entity.govorg.CustomerAgencyEntity; import com.epmet.dataaggre.service.AggreGridService; import com.epmet.dataaggre.service.datastats.DataStatsService; +import com.epmet.dataaggre.service.epmetuser.EpmetUserService; import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService; import com.epmet.dataaggre.service.govorg.GovOrgService; import com.github.pagehelper.PageInfo; @@ -20,6 +22,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; @Service public class AggreGridServiceImpl implements AggreGridService { @@ -33,6 +37,9 @@ public class AggreGridServiceImpl implements AggreGridService { @Autowired private StatsStaffPatrolRecordDailyService statsStaffPatrolRecordDailyService; + @Autowired + private EpmetUserService epmetUserService; + @Override public List getGridMemberDataAnalysis( List gridIds, @@ -100,6 +107,19 @@ public class AggreGridServiceImpl implements AggreGridService { List> userIdsParts = Lists.partition(userIds, partSize); for (List userIdsPart : userIdsParts) { + + // 批量查询出用户信息 + List staffInfos = epmetUserService.listStaffsByIds(userIdsPart); + //Map staffIdAndStaffInfo = staffInfos.stream().collect(Collectors.toMap((s) -> s.getUserId(), Function.identity())); + for (CustomerStaffEntity staffInfo : staffInfos) { + Map gridAndData = structedData.get(staffInfo.getUserId()); + if (gridAndData != null) { + gridAndData.forEach((k, v) -> v.setMobile(staffInfo.getMobile())); + } + } + + + // 批量查询出巡查信息 List patrolDatas = statsStaffPatrolRecordDailyService.listStaffPatrolRecordDailyAnalysis(pids, userIdsPart, startDateID, endDateID); for (StaffPatrolRecordDailyResultDTO d : patrolDatas) { Map gridAndData = structedData.get(d.getStaffId()); From 6953e23a29c8a3467b406d42d15b310db7f2d3b0 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 5 Jan 2022 11:05:07 +0800 Subject: [PATCH 15/16] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=81=94=E5=BB=BA=E6=B4=BB=E5=8A=A8=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../result/resi/ResiActDetailResultDTO.java | 21 +++++++++++++++ .../java/com/epmet/constant/ActConstant.java | 5 ++++ .../service/impl/ActInfoServiceImpl.java | 26 +++++++++++++++++++ .../service/impl/WorkActServiceImpl.java | 13 ++++------ .../src/main/resources/mapper/ActInfoDao.xml | 5 +++- 5 files changed, 61 insertions(+), 9 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java index 4ee734f45e..a232ebdf33 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java @@ -175,4 +175,25 @@ public class ResiActDetailResultDTO implements Serializable { * 取消活动的时间(yyyy-MM-dd HH:mm) */ private String cancelTime; + + /** + * 活动类型爱心活动heart 联建活动party + */ + private String actType; + + /** + * 联建单位 + */ + private String unitId; + private String unitName; + /** + * 活动目标 + */ + private String target; + + /** + * 服务事项 + */ + private String serviceMatter; + private String serviceMatterName; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/ActConstant.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/ActConstant.java index 9855cee625..ce1d187bf2 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/ActConstant.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/ActConstant.java @@ -169,4 +169,9 @@ public interface ActConstant { * 活动类型-联建活动 */ String PARTY = "party"; + + /** + * 服务事项code + */ + String SERVICE_MATTER_CODE = "1010"; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActInfoServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActInfoServiceImpl.java index eb2cd42af7..983c4834a2 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActInfoServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActInfoServiceImpl.java @@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; @@ -33,12 +34,17 @@ import com.epmet.dao.ActInfoDao; import com.epmet.dao.ActUserRelationDao; import com.epmet.dao.HeartUserInfoDao; import com.epmet.dto.ActInfoDTO; +import com.epmet.dto.IcPartyUnitDTO; +import com.epmet.dto.form.demand.SubCodeFormDTO; import com.epmet.dto.form.resi.*; +import com.epmet.dto.result.demand.OptionDTO; import com.epmet.dto.result.resi.*; import com.epmet.entity.ActInfoEntity; import com.epmet.entity.ActUserRelationEntity; import com.epmet.service.ActInfoService; import com.epmet.service.ActUserRelationService; +import com.epmet.service.IcPartyUnitService; +import com.epmet.service.IcResiDemandDictService; import com.epmet.utils.CaculateDistance; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; @@ -47,7 +53,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.*; +import java.util.stream.Collectors; /** * 活动信息 @@ -68,6 +76,10 @@ public class ActInfoServiceImpl extends BaseServiceImpl page(Map params) { @@ -245,6 +257,20 @@ public class ActInfoServiceImpl extends BaseServiceImpl categoryMap = icResiDemandDictService.querySubCodeList(codeFormDTO).stream().collect(Collectors.toMap(OptionDTO::getValue, OptionDTO::getLabel)); + detailResultDTO.setServiceMatterName(categoryMap.get(detailResultDTO.getServiceMatter())); + } + if (StringUtils.isNotBlank(detailResultDTO.getUnitId())) { + //获取单位名称 + IcPartyUnitDTO unitDTO = icPartyUnitService.get(detailResultDTO.getUnitId()); + detailResultDTO.setUnitName(null != unitDTO ? unitDTO.getUnitName() : StrConstant.EPMETY_STR); + } return new Result().ok(detailResultDTO); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActServiceImpl.java index a54b43cce2..e113d72019 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActServiceImpl.java @@ -103,10 +103,7 @@ public class WorkActServiceImpl implements WorkActService { @Resource private IcPartyUnitService icPartyUnitService; - /** - * 服务事项code - */ - private static final String SERVICE_MATTER_CODE = "1010"; + /** * @author yinzuomei @@ -787,7 +784,7 @@ public class WorkActServiceImpl implements WorkActService { //获取服务事项 SubCodeFormDTO codeFormDTO = new SubCodeFormDTO(); codeFormDTO.setCustomerId(customerId); - codeFormDTO.setParentCategoryCode(SERVICE_MATTER_CODE); + codeFormDTO.setParentCategoryCode(ActConstant.SERVICE_MATTER_CODE); Map categoryMap = icResiDemandDictService.querySubCodeList(codeFormDTO).stream().collect(Collectors.toMap(OptionDTO::getValue, OptionDTO::getLabel)); canceledActDetailResultDTO.setServiceMatterName(categoryMap.get(canceledActDetailResultDTO.getServiceMatter())); } @@ -845,7 +842,7 @@ public class WorkActServiceImpl implements WorkActService { //获取服务事项 SubCodeFormDTO codeFormDTO = new SubCodeFormDTO(); codeFormDTO.setCustomerId(formDTO.getCustomerId()); - codeFormDTO.setParentCategoryCode(SERVICE_MATTER_CODE); + codeFormDTO.setParentCategoryCode(ActConstant.SERVICE_MATTER_CODE); Map categoryMap = icResiDemandDictService.querySubCodeList(codeFormDTO).stream().collect(Collectors.toMap(OptionDTO::getValue, OptionDTO::getLabel)); resultDTO.setServiceMatterName(categoryMap.get(resultDTO.getServiceMatter())); } @@ -926,7 +923,7 @@ public class WorkActServiceImpl implements WorkActService { //获取服务事项 SubCodeFormDTO codeFormDTO = new SubCodeFormDTO(); codeFormDTO.setCustomerId(customerId); - codeFormDTO.setParentCategoryCode(SERVICE_MATTER_CODE); + codeFormDTO.setParentCategoryCode(ActConstant.SERVICE_MATTER_CODE); Map categoryMap = icResiDemandDictService.querySubCodeList(codeFormDTO).stream().collect(Collectors.toMap(OptionDTO::getValue, OptionDTO::getLabel)); resultDTO.setServiceMatterName(categoryMap.get(resultDTO.getServiceMatter())); } @@ -1322,7 +1319,7 @@ public class WorkActServiceImpl implements WorkActService { //获取服务事项 SubCodeFormDTO codeFormDTO = new SubCodeFormDTO(); codeFormDTO.setCustomerId(customerId); - codeFormDTO.setParentCategoryCode(SERVICE_MATTER_CODE); + codeFormDTO.setParentCategoryCode(ActConstant.SERVICE_MATTER_CODE); Map categoryMap = icResiDemandDictService.querySubCodeList(codeFormDTO).stream().collect(Collectors.toMap(OptionDTO::getValue, OptionDTO::getLabel)); resultDTO.setServiceMatterName(categoryMap.get(resultDTO.getServiceMatter())); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml index f2054d890f..6d3b77e446 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml @@ -445,7 +445,10 @@ IF(aur.SIGN_IN_FLAG = 'signed_in', true , false ) as isSignUp, -- 是否已签到(true已签到,false未签到) i.ACT_STATUS actStatus, i.CANCEL_REASON cancelReason, - DATE_FORMAT(i.CANCEL_TIME,'%Y-%m-%d %H:%i') cancelTime + DATE_FORMAT(i.CANCEL_TIME,'%Y-%m-%d %H:%i') cancelTime, + i.UNIT_ID AS unitId, + i.SERVICE_MATTER AS serviceMatter, + i.TARGET AS target FROM act_info i LEFT JOIN (SELECT count(1) signupNum, re.ACT_ID from act_user_relation re WHERE re.DEL_FLAG = '0' AND re.`STATUS` != 'refused' AND re.`STATUS` != 'canceled' GROUP BY re.ACT_ID) c ON c.ACT_ID = i.ID From 78ae50b3a12cc96834222d0f15dca4982492f934 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 5 Jan 2022 11:14:57 +0800 Subject: [PATCH 16/16] =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E7=AB=AF=E6=B4=BB?= =?UTF-8?q?=E5=8A=A8=E7=AE=A1=E7=90=86=E5=88=97=E8=A1=A8=E8=BF=94=E5=9B=9E?= =?UTF-8?q?actType?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/result/work/CanceledActResultDTO.java | 4 ++++ .../com/epmet/dto/result/work/FinishedActResultDTO.java | 5 +++++ .../epmet/dto/result/work/InProgressActResultDTO.java | 5 +++++ .../src/main/resources/mapper/ActInfoDao.xml | 9 ++++++--- 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CanceledActResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CanceledActResultDTO.java index 17e21fc678..89b1374c03 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CanceledActResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CanceledActResultDTO.java @@ -57,4 +57,8 @@ public class CanceledActResultDTO implements Serializable { * 活动地点 */ private String actAddress; + /** + * 活动类型 爱心活动heart 联建活动party + */ + private String actType; } diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/FinishedActResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/FinishedActResultDTO.java index a908287e24..113d5dc46e 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/FinishedActResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/FinishedActResultDTO.java @@ -58,4 +58,9 @@ public class FinishedActResultDTO implements Serializable { * 活动地点 */ private String actAddress; + + /** + * 活动类型 爱心活动heart 联建活动party + */ + private String actType; } diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/InProgressActResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/InProgressActResultDTO.java index 7f0d214f70..eae286055b 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/InProgressActResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/InProgressActResultDTO.java @@ -82,4 +82,9 @@ public class InProgressActResultDTO implements Serializable { * 活动地点 */ private String actAddress; + + /** + * 活动类型 爱心活动heart 联建活动party + */ + private String actType; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml index 6d3b77e446..f06e68a08f 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml @@ -532,7 +532,8 @@ ) AS signedUp, ai.SIGN_UP_END_TIME as signUpEndTime, ai.SIGN_UP_START_TIME as signUpStartTime, - ai.ACT_ADDRESS as actAddress + ai.ACT_ADDRESS as actAddress, + ai.act_type as actType FROM act_info ai WHERE @@ -553,7 +554,8 @@ ai.ACT_END_TIME AS actEndTime, ai.CANCEL_TIME AS cancelTime, ai.CANCEL_REASON AS cancelReason, - ai.ACT_ADDRESS as actAddress + ai.ACT_ADDRESS as actAddress, + ai.act_type as actType FROM act_info ai WHERE @@ -575,7 +577,8 @@ ai.ACT_END_TIME AS actEndTime, ai.ACTUAL_START_TIME as actualStartTime, ai.ACTUAL_END_TIME as actualEndTime, - ai.ACT_ADDRESS as actAddress + ai.ACT_ADDRESS as actAddress, + ai.act_type as actType FROM act_info ai WHERE