From 8f0425e065676d57a3dd813e94b869c1193d8f13 Mon Sep 17 00:00:00 2001 From: manailin <261030956@qq.com> Date: 星期日, 20 六月 2021 11:05:20 +0800 Subject: [PATCH] [新增]新增定时向浪潮传送事件信息包括文件信息 --- springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java | 134 +++++++++++++++++++++++++++++++------------- 1 files changed, 95 insertions(+), 39 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 671f635..d67e636 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 @@ -2,6 +2,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -13,6 +14,7 @@ import com.panzhihua.common.model.vos.community.ComActVO; import com.panzhihua.common.model.vos.grid.*; import com.panzhihua.common.service.community.CommunityService; +import com.panzhihua.common.utlis.ExcelSelectListUtil; import com.panzhihua.common.utlis.LngLatUtils; import com.panzhihua.common.utlis.StringUtils; import com.panzhihua.service_grid.dao.*; @@ -55,7 +57,8 @@ private EventGridMemberRelationMapper eventGridMemberRelationMapper; @Resource private EventGridDataService eventGridDataService; - + @Resource + private EventResourceMapper eventResourceMapper; /** * 分页查找事件 * @@ -531,10 +534,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 +653,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 +1183,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); } @@ -1289,9 +1298,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 +1513,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 +1584,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 +1653,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 +1688,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 +1722,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 +1751,7 @@ throw new ServiceException("更新事件状态失败"); } addTransferRecord(eventDO.getId(), userId, userName, 1, - "重新发布已撤销事件", userId, userName, 8); + "重新发布已撤销事件", userId, userName, 8); } return R.ok(); } else { @@ -1742,14 +1762,20 @@ @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 + "的事件不存在"); } @@ -1838,6 +1864,7 @@ } @Override + @Transactional(rollbackFor = Exception.class) public R reportDirect(CommonEventDirectReportDTO commonEventDirectReportDTO) { if(commonEventDirectReportDTO.getEventId()!=null){ @@ -2019,4 +2046,33 @@ return R.fail(); } + + @Override + public List<EventDetailsVO> getUnUploadEvent() { + List<EventDetailsVO> eventDetailsVOList =new ArrayList<>(); + List<EventDO> unEventList = baseMapper.selectList( + new QueryWrapper<EventDO>() + .eq("upload", false) + ); + unEventList.forEach(eventDO -> { + eventDetailsVOList.add(eventDetails(eventDO.getId()).getData()); + }); + return eventDetailsVOList; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean updateLcUploadFlag(Long id) { + EventDO event = baseMapper.selectById(id); + event.setUpload(true); + baseMapper.updateById(event); + EventResourceDO eventResourceDO =new EventResourceDO(); + eventResourceDO.setUpload(true); + int flag = eventResourceMapper.update(eventResourceDO, new QueryWrapper<EventResourceDO>() + .eq("ref_id", id)); + if(flag>0){ + return true; + } + return false; + } } -- Gitblit v1.7.1