From 6fb866218f53e1cf2c8c108c5aefc2a6a9e19c80 Mon Sep 17 00:00:00 2001 From: xyh <18782104331@139.com> Date: 星期四, 17 六月 2021 17:55:30 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/test_screen' into test_screen --- springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java | 132 +++++++++++++++++++++++++++----------------- 1 files changed, 81 insertions(+), 51 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java index c1a6072..d7fff02 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java @@ -280,6 +280,7 @@ eventResourceDO.setRefId(eventDO.getId()); eventResourceDO.setCreateBy(commonEventAddDTO.getUserId()); eventResourceDO.setResourceTime(commonEventAddDTO.getAudioTime()); + eventResourceDO.setResourceName(commonEventAddDTO.getAudio().substring(commonEventAddDTO.getAudio().lastIndexOf("/")+1)); int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); if (audioAdd != 1) { throw new ServiceException("添加音频失败"); @@ -294,6 +295,7 @@ eventResourceDO.setRefId(eventDO.getId()); eventResourceDO.setCreateBy(commonEventAddDTO.getUserId()); eventResourceDO.setResourceTime(commonEventAddDTO.getVideoTime()); + eventResourceDO.setResourceName(commonEventAddDTO.getVideo().substring(commonEventAddDTO.getVideo().lastIndexOf("/")+1)); int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); if (videoAdd != 1) { throw new ServiceException("添加视频失败"); @@ -309,6 +311,7 @@ eventResourceDO.setUrl(pica[i]); eventResourceDO.setRefId(eventDO.getId()); eventResourceDO.setCreateBy(commonEventAddDTO.getUserId()); + eventResourceDO.setResourceName(pica[i].substring(pica[i].lastIndexOf("/")+1)); int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); if (picAdd != 1) { throw new ServiceException("添加图片失败"); @@ -515,6 +518,8 @@ eventDO.setUpdateBy(eventRevokeDTO.getUserId()); eventDO.setProcessType(1);//网格员处理 eventDO.setCommunityProcess(0);//非 社区处理 + eventDO.setRevokeType(eventRevokeDTO.getRevokeType()); + eventDO.setRevokeId(eventRevokeDTO.getRevokeId()); int updated = this.getBaseMapper().updateById(eventDO); if (updated == 1) { addTransferRecord(eventDO.getId(), eventRevokeDTO.getUserId(), eventRevokeDTO.getUserName(), @@ -531,10 +536,10 @@ if (eventDO == null) { return R.fail("事件不存在"); } - boolean canDealByUser = eventDO.getEventStatus() == 2 && eventDO.getEventProcessStatus() == 1; + boolean canDealByUser = (eventDO.getEventStatus() == 2||eventDO.getEventStatus()==4) && eventDO.getEventProcessStatus() == 1; if (!canDealByUser) { - if (eventDO.getEventStatus() != 2) { - return R.fail("事件不是发布状态"); + if (eventDO.getEventStatus() != 2 ) { + return R.fail("事件不是发布/待处理状态"); } if (eventDO.getEventProcessStatus() != 1) { return R.fail("事件不是待处理状态"); @@ -650,7 +655,8 @@ @Override public R republishEvent(CommonEventRepublishDTO commonEventRepublishDTO) { EventDO eventDO = this.getBaseMapper().selectById(commonEventRepublishDTO.getId()); - boolean canRepublishByUser = eventDO.getEventStatus() == 4 || eventDO.getEventStatus() == 1; + //boolean canRepublishByUser = eventDO.getEventStatus() == 4 || eventDO.getEventStatus() == 1; + boolean canRepublishByUser = eventDO.getEventDealStatus() == 7|eventDO.getEventDealStatus() == 5; //已失效状态 if (!canRepublishByUser) { return R.fail("当前不是撤销/草稿状态"); } @@ -1179,6 +1185,11 @@ eventVO.setAudios(audioList); eventVO.setPics(picList); eventVO.setVideos(videoList); + //查询网格员头像 + String imageUrl = eventMapper.getGridMemberImageUrl(eventVO.getGridMemberId()); + if (StringUtils.isNotEmpty(imageUrl)) { + eventVO.setGridMemberImageUrl(imageUrl); + } }); return R.ok(ipage); } @@ -1256,12 +1267,12 @@ if (eventDO.getEventCategory() == 1) { boolean canRevoke = eventDO.getEventDealStatus() == 3; //上报状态 if (!canRevoke) { - return R.fail("当前事件不是上报状态,不允许标为无效"); + return R.fail("当前事件不是上报状态,不允许撤销"); } } else if (eventDO.getEventCategory() == 2) { boolean canRevoke = eventDO.getEventDealStatus() == 8; //发布状态 if (!canRevoke) { - return R.fail("当前事件不是发布状态,不允许标为无效"); + return R.fail("当前事件不是发布状态,不允许撤销"); } } else { return R.fail(""); @@ -1275,6 +1286,8 @@ eventDO.setEventStatus(4);//4、撤销 eventDO.setProcessType(1);//网格员处理 eventDO.setCommunityProcess(0);//非 社区处理 + eventDO.setRevokeId(eventRevokeDTO.getRevokeId()); + eventDO.setRevokeType(eventRevokeDTO.getRevokeType()); int updated = this.getBaseMapper().updateById(eventDO); if (updated == 1) { addTransferRecord(eventDO.getId(), eventRevokeDTO.getUserId(), eventRevokeDTO.getUserName(), 1, "标为无效", eventRevokeDTO.getCommunityId(), eventRevokeDTO.getCommunityName(), 4); @@ -1289,9 +1302,9 @@ if (eventDO == null) { return R.fail("事件不存在"); } - boolean canRepulish = eventDO.getEventDealStatus() == 7; //已失效状态 + boolean canRepulish = eventDO.getEventDealStatus() == 7|eventDO.getEventDealStatus() == 5; //已失效状态 if (!canRepulish) { - return R.fail("当前事件不是已失效状态,不能重新发布"); + return R.fail("当前事件不是已失效状态/草稿状态,不能重新发布"); } eventDO.setInvalid(true); int updated = this.getBaseMapper().updateById(eventDO); @@ -1504,14 +1517,13 @@ .eq(EventTransferRecordDO::getEventId, eventId) .orderByDesc(EventTransferRecordDO::getCreateAt) ); - if (list == null || list.size() == 0) { - throw new ServiceException("事件流转记录异常"); - } - EventTransferRecordDO lastRecord = list.get(0); EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO(); - eventTransferRecordDO.setFromType(lastRecord.getToType()); - eventTransferRecordDO.setFromId(lastRecord.getToId()); - eventTransferRecordDO.setFromName(lastRecord.getToName()); + if (list != null && list.size() > 0) { + EventTransferRecordDO lastRecord = list.get(0); + eventTransferRecordDO.setFromType(lastRecord.getToType()); + eventTransferRecordDO.setFromId(lastRecord.getToId()); + eventTransferRecordDO.setFromName(lastRecord.getToName()); + } eventTransferRecordDO.setToType(toType); eventTransferRecordDO.setToId(toId); eventTransferRecordDO.setProcessDate(new Date()); @@ -1576,10 +1588,11 @@ Integer community_process = eventDO.getCommunityProcess() != null ? eventDO.getCommunityProcess() : -1; Integer eventDealStatus = -1; - if (eventDO.getInvalid() != null && eventDO.getInvalid() == false) { + /*if (eventDO.getInvalid() != null && eventDO.getInvalid() == false) { eventDealStatus = 7; //7已失效 - } else if (event_status == 1) { + }*/ + if (event_status == 1) { eventDealStatus = 5; //"草稿箱" } else if (event_status == 4) { @@ -1644,7 +1657,7 @@ public R getNearByGrid(PageEventGridNearbyDTO pageEventGridNearbyDTO) { Page page = new Page(pageEventGridNearbyDTO.getPageNum(), pageEventGridNearbyDTO.getPageSize()); String latLng = pageEventGridNearbyDTO.getHappentLatLng(); - if(!latLng.matches("^[\\-\\+]?((0|([1-8]\\d?))(\\.\\d{1,10})?|90(\\.0{1,10})?),[\\-\\+]?(0(\\.\\d{1,10})?|([1-9](\\d)?)(\\.\\d{1,10})?|1[0-7]\\d{1}(\\.\\d{1,10})?|180\\.0{1,10})$")){ + if(!latLng.matches("^[\\-\\+]?(0(\\.\\d{1,10})?|([1-9](\\d)?)(\\.\\d{1,10})?|1[0-7]\\d{1}(\\.\\d{1,10})?|180\\.0{1,10}),[\\-\\+]?((0|([1-8]\\d?))(\\.\\d{1,10})?|90(\\.0{1,10})?)$")){ return R.fail("经纬度参数错误"); } String latLngArr[] = latLng.split(","); @@ -1679,23 +1692,28 @@ @Override @Transactional(rollbackFor = Exception.class) public R deleteEventBatch(EventDeleteDTO eventDeleteDTO) { - List<Long> eventIds = eventDeleteDTO.getId(); + List<String> eventIds = eventDeleteDTO.getId(); if (eventIds != null && eventIds.size() > 0) { R rt = null; Long userId = eventDeleteDTO.getUserId(); - for (Long id : eventIds) { - EventDO eventDO = eventMapper.selectById(id); - if (eventDO == null) { - throw new ServiceException("id为" + id + "的事件不存在"); - } - if (eventDO.getEventStatus() != null && - (eventDO.getEventStatus().intValue() == 1 || eventDO.getEventStatus().intValue() == 4)) {//草稿 或者 已撤销 的事件可以删除 - eventDO.setEventStatus(3);//逻辑删除 - eventDO.setUpdateBy(userId); - int updated = this.getBaseMapper().updateById(eventDO); - if (updated != 1) { - throw new ServiceException("删除事件失败"); + for (String id : eventIds) { + try { + Long eventId = Long.parseLong(id); + EventDO eventDO = eventMapper.selectById(eventId); + if (eventDO == null) { + throw new ServiceException("id为" + id + "的事件不存在"); } + if (eventDO.getEventStatus() != null && + (eventDO.getEventStatus().intValue() == 1 || eventDO.getEventStatus().intValue() == 4)) {//草稿 或者 已撤销 的事件可以删除 + eventDO.setEventStatus(3);//逻辑删除 + eventDO.setUpdateBy(userId); + int updated = this.getBaseMapper().updateById(eventDO); + if (updated != 1) { + throw new ServiceException("删除事件失败"); + } + } + }catch (Exception e){ + throw new ServiceException("事件ID错误,删除失败"); } } return R.ok(); @@ -1708,17 +1726,23 @@ @Override @Transactional(rollbackFor = Exception.class) public R batchRepublishEvent(CommonEventBatchRepublishDTO commonEventBatchRepublishDTO) { - List<Long> ids = commonEventBatchRepublishDTO.getId(); + List<String> ids = commonEventBatchRepublishDTO.getId(); if (ids != null && ids.size() > 0) { Long userId = commonEventBatchRepublishDTO.getUserId(); String userName = commonEventBatchRepublishDTO.getUserName(); - for (Long id : ids) { - EventDO eventDO = this.getBaseMapper().selectById(id); + for (String id : ids) { + Long eventId = -1L; + try { + eventId = Long.parseLong(id); + }catch (Exception e){ + throw new ServiceException("事件ID错误,发布失败"); + } + EventDO eventDO = this.getBaseMapper().selectById(eventId); if (eventDO == null) { throw new ServiceException("id为" + id + "的事件不存在"); } - boolean canRepublishByUser = eventDO.getEventStatus() != null && - eventDO.getEventStatus() == 4 || eventDO.getEventStatus() == 1; + boolean canRepublishByUser = eventDO.getEventDealStatus() != null && + (eventDO.getEventDealStatus() == 5 || eventDO.getEventDealStatus() == 6); if (!canRepublishByUser) { throw new ServiceException("当前不是撤销/草稿状态"); } @@ -1731,7 +1755,7 @@ throw new ServiceException("更新事件状态失败"); } addTransferRecord(eventDO.getId(), userId, userName, 1, - "重新发布已撤销事件", userId, userName, 8); + "重新发布已撤销事件", userId, userName, 8); } return R.ok(); } else { @@ -1742,27 +1766,33 @@ @Override @Transactional(rollbackFor = Exception.class) public R batchMarkEventInvalid(EventBatchRevokeDTO eventBatchRevokeDTO) { - List<Long> ids = eventBatchRevokeDTO.getId(); + List<String> ids = eventBatchRevokeDTO.getId(); if (ids != null && ids.size() > 0) { Long userId = eventBatchRevokeDTO.getUserId(); String userName = eventBatchRevokeDTO.getUserName(); Long communityId = eventBatchRevokeDTO.getCommunityId(); String communityName = eventBatchRevokeDTO.getCommunityName(); - for (Long id : ids) { - EventDO eventDO = this.getBaseMapper().selectById(id); + for (String id : ids) { + Long eventId = -1L; + try { + eventId = Long.parseLong(id); + }catch (Exception e){ + throw new ServiceException("事件ID错误,不能标记失效"); + } + EventDO eventDO = this.getBaseMapper().selectById(eventId); if (eventDO == null) { throw new ServiceException("id为" + id + "的事件不存在"); } if (eventDO.getEventCategory() != null) { - if (eventDO.getEventCategory() == 1) { + if (eventDO.getEventCategory() == 1) {// boolean canRevoke = eventDO.getEventDealStatus() == 3; //上报状态 if (!canRevoke) { - throw new ServiceException("当前事件不是上报状态,不允许标为无效"); + throw new ServiceException("当前事件不是上报状态,不允许撤销"); } - } else if (eventDO.getEventCategory() == 2) { + } else if (eventDO.getEventCategory() == 2) {//宣传教育 boolean canRevoke = eventDO.getEventDealStatus() == 8; //发布状态 if (!canRevoke) { - throw new ServiceException("当前事件不是发布状态,不允许标为无效"); + throw new ServiceException("当前事件不是发布状态,不允许撤销"); } } else { throw new ServiceException("事件分类错误"); @@ -1838,6 +1868,7 @@ } @Override + @Transactional(rollbackFor = Exception.class) public R reportDirect(CommonEventDirectReportDTO commonEventDirectReportDTO) { if(commonEventDirectReportDTO.getEventId()!=null){ @@ -1850,10 +1881,9 @@ eventDO.setGridMemberId(commonEventDirectReportDTO.getUserId()); eventDO.setEventCategory(1l);//办件事件 eventDO.setEventStatus(1);//事件状态 2发布 - eventDO.setProcessType(1);//网格员处理 - eventDO.setCommunityProcess(0);//非 社区处理 + eventDO.setProcessType(2);//社区处理 + eventDO.setCommunityProcess(1);// 社区处理 eventDO.setUpdateBy(commonEventDirectReportDTO.getUserId()); - eventDO.setEventDealStatus(5); if (eventMapper.updateById(eventDO) > 0) { int deleted = eventResourceService.getBaseMapper() .delete(new LambdaQueryWrapper<EventResourceDO>() @@ -1938,8 +1968,8 @@ } eventDO.setEventCategory(1l);//办件事件 eventDO.setEventStatus(2);//事件状态 2发布 - eventDO.setProcessType(1);//网格员处理 - eventDO.setCommunityProcess(0);//非 社区处理 + eventDO.setProcessType(2);//社区处理 + eventDO.setCommunityProcess(1);//社区处理 eventDO.setEventProcessStatus(1); eventDO.setGridMemberName(commonEventDirectReportDTO.getUserName()); eventDO.setGridMemberTelephone(commonEventDirectReportDTO.getPhone()); @@ -2001,7 +2031,7 @@ if (comActVO == null) { return R.fail("社区不存在"); } - EventDO eventDOInDB = this.getBaseMapper().selectById(commonEventDirectReportDTO.getEventId()); + EventDO eventDOInDB = this.getBaseMapper().selectById(eventDO.getId()); eventDOInDB.setCommunityProcess(1); //社区处理 eventDOInDB.setProcessType(2); //当前处理对象: 社区处理 eventDOInDB.setCommunityProcess(1); @@ -2014,7 +2044,7 @@ } addTransferRecord(eventDO.getId(), commonEventDirectReportDTO.getToId(), comActVO.getName(), 2, commonEventDirectReportDTO.getProcessResult(), commonEventDirectReportDTO.getUserId(), commonEventDirectReportDTO.getUserName(), 2); - return R.ok(); + return R.ok(eventDO.getId()); } } -- Gitblit v1.7.1