From b8aba44836bb65c32ae42ec03f133954eb6ab5ac Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 22 Dec 2021 17:31:32 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E3=80=90=E4=BA=8B=E4=BB=B6=E3=80=91?= =?UTF-8?q?=EF=BC=88=E6=9C=AA=E5=A4=84=E7=90=86=E3=80=81=E5=A4=84=E7=90=86?= =?UTF-8?q?=E4=B8=AD=E3=80=81=E5=B7=B2=E5=8A=9E=E7=BB=93=EF=BC=89=E5=9C=B0?= =?UTF-8?q?=E5=9B=BE=E3=80=81=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/form/ResiEventLsitFormDTO.java | 41 +++++++++ .../dto/result/EventDetailResultDTO.java | 2 +- .../dto/result/ResiEventListResultDTO.java | 85 +++++++++++++++++++ .../epmet/controller/ResiEventController.java | 10 +++ .../main/java/com/epmet/dao/ResiEventDao.java | 6 ++ .../com/epmet/service/ResiEventService.java | 6 ++ .../service/impl/ResiEventServiceImpl.java | 41 +++++++++ .../main/resources/mapper/ResiEventDao.xml | 55 ++++++++++++ 8 files changed, 245 insertions(+), 1 deletion(-) create mode 100644 epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ResiEventLsitFormDTO.java create mode 100644 epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ResiEventListResultDTO.java diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ResiEventLsitFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ResiEventLsitFormDTO.java new file mode 100644 index 0000000000..8c9e190bb1 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ResiEventLsitFormDTO.java @@ -0,0 +1,41 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Author sun + * @Description 【事件】(未处理、处理中、已办结)地图、列表 + **/ +@Data +public class ResiEventLsitFormDTO implements Serializable { + /** + * 网格Id + */ + @NotBlank(message = "网格Id不能为空",groups = Event.class) + private String gridId; + /** + * 未处理:un_read;处理中:processing;已办结:closed_case + */ + @NotBlank(message = "statusCondition不能为空",groups = Event.class) + private String statusCondition; + /** + * 请求页码 + * */ + @Min(1) + private int pageNo = 1; + /** + * 每页多少条数据 + * */ + private int pageSize = 20; + /** + * 是否分页(是:true 否:false) + * */ + private Boolean isPage = true; + + public interface Event {} + +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EventDetailResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EventDetailResultDTO.java index 71b72e456d..4f0e1f1ff0 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EventDetailResultDTO.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EventDetailResultDTO.java @@ -81,7 +81,7 @@ public class EventDetailResultDTO implements Serializable { */ private List voiceList; /** - * 报事图片 + * 事件附件 */ @JsonIgnore private List attachmentList; diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ResiEventListResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ResiEventListResultDTO.java new file mode 100644 index 0000000000..44dc457a59 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ResiEventListResultDTO.java @@ -0,0 +1,85 @@ +package com.epmet.dto.result; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * @Author sun + * @Description 【事件】(未处理、处理中、已办结)地图、列表 + **/ +@Data +public class ResiEventListResultDTO implements Serializable { + private static final long serialVersionUID = -7372245830000262134L; + + /** + * 事件id + */ + private String resiEventId; + /** + * 事件内容 + */ + private String eventContent; + /** + * 图片列表,可为空 + */ + private List imgList; + /** + * true展示;false不展示 + */ + private Boolean redDot; + /** + * 处理中:processing;已办结:closed_case + */ + private String status; + /** + * true:已转项目;false:未立项 + */ + private Boolean shiftProject; + /** + * 列表显示时间用此列:yyyy-MM-dd HH:mm:ss;处理中:上报事件时间,处理中:最新一次处理事件;已办结:办结时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8") + private Date showTime; + /** + * true:显示回复;false:不显示回复按钮 + */ + private String replyButtonFlag; + /** + * 事件是否被阅读过;1已读;针对报事人待处理列表 + */ + private Boolean readFlag; + /** + * 语音附件url集合 + */ + private List voiceList; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 事件附件 + */ + @JsonIgnore + private List attachmentList; + + @Data + public static class Attachment { + /** + * url + */ + private String url; + /** + * 附件类型 + */ + private String type; + } +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java index 973bfe0a24..0ca734f95f 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java @@ -265,4 +265,14 @@ public class ResiEventController { return new Result(); } + /** + * @Author sun + * @Description 【事件】(未处理、处理中、已办结)地图、列表 + **/ + @PostMapping("resieventlist") + public Result> resiEventList(@RequestBody ResiEventLsitFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, ResiEventLsitFormDTO.Event.class); + return new Result>().ok(resiEventService.resiEventList(formDTO)); + } + } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventDao.java index a39c72aa76..cf06138591 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventDao.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventDao.java @@ -95,4 +95,10 @@ public interface ResiEventDao extends BaseDao { * @return */ List selectUserReported(PageUserReportEventFormDTO formDTO); + + /** + * @Author sun + * @Description 查询网格下各种状态事件列表 + **/ + List resiEventList(@Param("gridId") String gridId, @Param("statusCondition")String statusCondition); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java index b54bc1dcac..b3b0321144 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java @@ -161,4 +161,10 @@ public interface ResiEventService extends BaseService { * @Description 定时任务调用-事件语音附件自动审核 **/ void autoAudit(); + + /** + * @Author sun + * @Description 【事件】(未处理、处理中、已办结)地图、列表 + **/ + List resiEventList(ResiEventLsitFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index ac6121bcaa..ac25d91e9d 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -997,5 +997,46 @@ public class ResiEventServiceImpl extends BaseServiceImpl resiEventList(ResiEventLsitFormDTO formDTO) { + PageInfo result = PageHelper.startPage(formDTO.getPageNo(), + formDTO.getPageSize(), formDTO.getIsPage()).doSelectPageInfo(() -> baseDao.resiEventList(formDTO.getGridId(), formDTO.getStatusCondition())); + result.getList().forEach(resultDTO -> { + //附件按类型分组【图片、语音】 + List imgList = new ArrayList<>(); + List voiceList = new ArrayList<>(); + resultDTO.getAttachmentList().forEach(file -> { + if ("image".equals(file.getType())) { + imgList.add(file.getUrl()); + } else if ("voice".equals(file.getType())) { + voiceList.add(file.getUrl()); + } + }); + resultDTO.setImgList(imgList); + resultDTO.setVoiceList(voiceList); + + if (EventConstant.EVENT_STATUS_CLOSED_CASE.equals(resultDTO.getStatus()) || resultDTO.getShiftProject()) { + // 已办结的、立项的不显示回复按钮 + resultDTO.setReplyButtonFlag("false"); + } else { + // 处理中的事件 + if (resultDTO.getReadFlag()) { + // 被别人看过了就显示回复 + resultDTO.setReplyButtonFlag("true"); + } else { + //别人没看过 + resultDTO.setReplyButtonFlag("false"); + } + } + }); + return result.getList(); + } } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml index 8ab7e0266d..94a3efcbce 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml @@ -98,6 +98,7 @@ and rea.ATTACHMENT_TYPE='image') where re.DEL_FLAG='0' and re.RECALL_FLAG='0' + AND re.audit_status = 'auto_passed' and re.REPORT_USER_ID=#{userId} and re.READ_FLAG='0' @@ -222,4 +223,58 @@ re.REPORT_USER_ID = #{epmetUserId} + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 91bf84654a7db2504662b955a4f85901362b40a4 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 17:56:17 +0800 Subject: [PATCH 2/4] bugfix --- .../src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java index 54a8c7f674..4d6b728387 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java @@ -688,5 +688,5 @@ public interface EpmetUserOpenFeignClient { * @return */ @GetMapping("/epmetuser/icresiuser/geticresiuser/{icResiUserId}") - Result getIcResiUserDTO(String icResiUserId); + Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId); } From e1790b2b5d5d56e6c382e84968233628d0348e5c Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 18:32:20 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java index 3a10ebd36d..3d2b474453 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java @@ -499,7 +499,7 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien /** * 查找居民端小程序里的用户对应ic里的人。以及家属们 * - * @param epmetUserIdList + * @param formDTO * @return */ @Override From 0c146e9570fb1a423f84d2a1c949a5c54bf0efbf Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 19:09:12 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E9=9C=80=E6=B1=82=E8=A1=A8=E5=AD=98?= =?UTF-8?q?=E5=82=A8=E9=9C=80=E6=B1=82=E4=BA=BA=E7=9A=84=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/IcUserDemandRecServiceImpl.java | 30 ++++++++++--------- .../epmet/feign/EpmetUserOpenFeignClient.java | 2 +- .../controller/IcResiUserController.java | 2 +- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java index bc9346fdd0..fbc4c68859 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java @@ -164,12 +164,14 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl houseIds=new HashSet<>(); houseIds.add(updateEntity.getDemandUserHouseId()); Result> houseInfoRes=govOrgOpenFeignClient.queryListHouseInfo(houseIds); - if(houseInfoRes.success()&&CollectionUtils.isNotEmpty(houseInfoRes.getData())){ + if(!houseInfoRes.success()||CollectionUtils.isEmpty(houseInfoRes.getData())){ + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人房屋地址信息异常"+JSON.toJSONString(houseInfoRes)); + } HouseInfoDTO houseInfoDTO=houseInfoRes.getData().get(NumConstant.ZERO); updateEntity.setServiceLocation(houseInfoDTO.getNeighborAddress(). concat(houseInfoDTO.getNeighborHoodName()) @@ -178,7 +180,6 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl demandUserRes=epmetUserOpenFeignClient.getIcResiUserDTO(fromDTO.getDemandUserId()); if(!demandUserRes.success()||null==demandUserRes.getData()){ - throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人信息异常"); + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人信息异常"+ JSON.toJSONString(demandUserRes)); } - insertEntity.setDemandUserHouseId(demandUserRes.getData().getVillageId()); + insertEntity.setDemandUserHouseId(demandUserRes.getData().getHomeId()); // 查询需求人的居住地址 Set houseIds=new HashSet<>(); houseIds.add(insertEntity.getDemandUserHouseId()); Result> houseInfoRes=govOrgOpenFeignClient.queryListHouseInfo(houseIds); - if(houseInfoRes.success()&&CollectionUtils.isNotEmpty(houseInfoRes.getData())){ - HouseInfoDTO houseInfoDTO=houseInfoRes.getData().get(NumConstant.ZERO); - insertEntity.setServiceLocation(houseInfoDTO.getNeighborAddress(). - concat(houseInfoDTO.getNeighborHoodName()) - .concat(houseInfoDTO.getBuildingName()) - .concat(houseInfoDTO.getUnitName()) - .concat(houseInfoDTO.getDoorName())); - insertEntity.setLongitude(houseInfoDTO.getBuildingLongitude()); - insertEntity.setLatitude(houseInfoDTO.getBuildingLatitude()); + if(!houseInfoRes.success()||CollectionUtils.isEmpty(houseInfoRes.getData())){ + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人房屋地址信息异常"+JSON.toJSONString(houseInfoRes)); } + HouseInfoDTO houseInfoDTO=houseInfoRes.getData().get(NumConstant.ZERO); + insertEntity.setServiceLocation(houseInfoDTO.getNeighborAddress(). + concat(houseInfoDTO.getNeighborHoodName()) + .concat(houseInfoDTO.getBuildingName()) + .concat(houseInfoDTO.getUnitName()) + .concat(houseInfoDTO.getDoorName())); + insertEntity.setLongitude(houseInfoDTO.getBuildingLongitude()); + insertEntity.setLatitude(houseInfoDTO.getBuildingLatitude()); baseDao.insert(insertEntity); IcUserDemandOperateLogEntity logEntity=new IcUserDemandOperateLogEntity(); logEntity.setCustomerId(fromDTO.getCustomerId()); diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java index 4d6b728387..2c4989f718 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java @@ -687,6 +687,6 @@ public interface EpmetUserOpenFeignClient { * @param icResiUserId * @return */ - @GetMapping("/epmetuser/icresiuser/geticresiuser/{icResiUserId}") + @PostMapping(value = "/epmetuser/icresiuser/geticresiuser/{icResiUserId}") Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java index fd7f325a01..395a5d40b9 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java @@ -633,7 +633,7 @@ public class IcResiUserController { * @param icResiUserId * @return */ - @GetMapping("geticresiuser/{icResiUserId}") + @PostMapping("geticresiuser/{icResiUserId}") public Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId){ if(StringUtils.isNotBlank(icResiUserId)){ return new Result().ok(icResiUserService.get(icResiUserId));