From f495b3389331dac4f5c66a9383a8a0c7ff82e37d Mon Sep 17 00:00:00 2001 From: CeDo <cedoogle@gmail.com> Date: 星期五, 28 五月 2021 18:14:15 +0800 Subject: [PATCH] none --- springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java | 568 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 561 insertions(+), 7 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 555010a..694d3a8 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 @@ -1,24 +1,31 @@ package com.panzhihua.service_grid.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.panzhihua.common.model.dtos.grid.EventAddDTO; -import com.panzhihua.common.model.dtos.grid.EventDeleteDTO; -import com.panzhihua.common.model.dtos.grid.EventEditDTO; -import com.panzhihua.common.model.dtos.grid.PageEventDTO; +import com.panzhihua.common.exceptions.ServiceException; +import com.panzhihua.common.model.dtos.grid.*; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.grid.EventDetailsVO; +import com.panzhihua.common.model.vos.grid.EventResourceVO; +import com.panzhihua.common.model.vos.grid.EventTransferRecordVO; import com.panzhihua.common.model.vos.grid.EventVO; +import com.panzhihua.common.utlis.StringUtils; import com.panzhihua.service_grid.dao.*; import com.panzhihua.service_grid.model.dos.*; +import com.panzhihua.service_grid.service.EventResourceService; import com.panzhihua.service_grid.service.EventService; +import com.panzhihua.service_grid.service.EventTransferRecordService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.beans.BeanUtils; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.Date; +import java.util.List; /** * @auther lyq @@ -31,6 +38,12 @@ @Resource private EventMapper eventMapper; + + @Resource + private EventResourceService eventResourceService; + @Resource + private EventTransferRecordService eventTransferRecordService; + /** * 新增事件 * @param eventAddDTO @@ -74,15 +87,52 @@ if(pageEventDTO.getPageSize()!=null) { page.setSize(pageEventDTO.getPageSize()); } - return R.ok(eventMapper.findByPage(page, pageEventDTO)); + IPage<EventVO> ipage = eventMapper.findByPage(page, pageEventDTO); + if(ipage!=null){ + List<EventVO> eventVOList = ipage.getRecords(); + eventVOList.forEach(eventVO -> { + List<EventResourceDO> eventResourceDOList = + eventResourceService.getBaseMapper().selectList(new LambdaQueryWrapper<EventResourceDO>() + .eq(EventResourceDO::getClassification, 1) + .eq(EventResourceDO::getRefId, eventVO.getId()) + ); + List<EventResourceVO> picList = new ArrayList<>(); + List<EventResourceVO> audioList = new ArrayList<>(); + List<EventResourceVO> videoList = new ArrayList<>(); + eventResourceDOList.forEach(eventResourceDO -> { + switch (eventResourceDO.getType()){ + case 1: + EventResourceVO picEventResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, picEventResourceVO); + picList.add(picEventResourceVO); + break; + case 2: + EventResourceVO audioResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, audioResourceVO); + audioList.add(audioResourceVO); + break; + case 3: + EventResourceVO videoResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, videoResourceVO); + videoList.add(videoResourceVO); + break; + } + }); + eventVO.setAudios(audioList); + eventVO.setPics(picList); + eventVO.setVideos(videoList); + }); + return R.ok(ipage); + } + return R.fail(); } /** * 删除事件 - * @param EventDeleteDTO + * @param CommonEventDeleteDTO * @return 平台用户信息 */ - public R delete(EventDeleteDTO EventDeleteDTO){ + public R delete(CommonEventDeleteDTO CommonEventDeleteDTO){ return R.fail(); } @@ -96,9 +146,513 @@ if(eventDO!=null) { EventDetailsVO eventDetailsVO = new EventDetailsVO(); BeanUtils.copyProperties(eventDO, eventDetailsVO); + //查询事件关联附件 + + List<EventResourceDO> eventResourceDOList = + eventResourceService.getBaseMapper().selectList(new LambdaQueryWrapper<EventResourceDO>() + .eq(EventResourceDO::getClassification, 1) + .eq(EventResourceDO::getRefId, id) + ); + List<EventResourceVO> picList = new ArrayList<>(); + List<EventResourceVO> audioList = new ArrayList<>(); + List<EventResourceVO> videoList = new ArrayList<>(); + eventResourceDOList.forEach(eventResourceDO -> { + switch (eventResourceDO.getType()){ + case 1: + EventResourceVO picEventResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, picEventResourceVO); + picList.add(picEventResourceVO); + break; + case 2: + EventResourceVO audioResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, audioResourceVO); + audioList.add(audioResourceVO); + break; + case 3: + EventResourceVO videoResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, videoResourceVO); + videoList.add(videoResourceVO); + break; + } + }); + eventDetailsVO.setAudios(audioList); + eventDetailsVO.setPics(picList); + eventDetailsVO.setVideos(videoList); + + + + //查询事件流转记录 + List<EventTransferRecordDO> eventTransferRecordDOList = eventTransferRecordService.getBaseMapper() + .selectList(new LambdaQueryWrapper<EventTransferRecordDO>() + .eq(EventTransferRecordDO::getEventId, id) + ); + + List<EventTransferRecordVO> eventTransferRecordVOS = new ArrayList<>(); + for (EventTransferRecordDO eventTransferRecordDO : eventTransferRecordDOList) { + EventTransferRecordVO eventTransferRecordVO = new EventTransferRecordVO(); + BeanUtils.copyProperties(eventTransferRecordDO, eventTransferRecordVO); + List<EventResourceDO> eventTransferResourceDOList = + eventResourceService.getBaseMapper().selectList(new LambdaQueryWrapper<EventResourceDO>() + .eq(EventResourceDO::getClassification, 3) + .eq(EventResourceDO::getRefId, eventTransferRecordDO.getId()) + ); + List<EventResourceVO> transferPicList = new ArrayList<>(); + List<EventResourceVO> transferAudioList = new ArrayList<>(); + List<EventResourceVO> transferVideoList = new ArrayList<>(); + eventTransferResourceDOList.forEach(eventResourceDO -> { + switch (eventResourceDO.getType()){ + case 1: + EventResourceVO picEventResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, picEventResourceVO); + transferPicList.add(picEventResourceVO); + break; + case 2: + EventResourceVO audioResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, audioResourceVO); + transferAudioList.add(audioResourceVO); + break; + case 3: + EventResourceVO videoResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, videoResourceVO); + transferVideoList.add(videoResourceVO); + break; + } + }); + eventTransferRecordVO.setAudios(transferAudioList); + eventTransferRecordVO.setPics(transferPicList); + eventTransferRecordVO.setVideos(transferVideoList); + eventTransferRecordVOS.add(eventTransferRecordVO); + } + eventDetailsVO.setTrans(eventTransferRecordVOS); return R.ok(eventDetailsVO); } return R.fail(); } + @Override + @Transactional(rollbackFor = Exception.class) + public R addCommon(CommonEventAddDTO commonEventAddDTO) { + EventDO eventDO = new EventDO(); + BeanUtils.copyProperties(commonEventAddDTO, eventDO); + eventDO.setGridMemberId(commonEventAddDTO.getUserId()); + eventDO.setEventCategory(1l);//办件事件 + eventDO.setEventStatus(2);//事件状态 2发布 + eventDO.setProcessType(1);//网格员处理 + eventDO.setCommunityProcess(0);//非 社区处理 + eventDO.setEventProcessStatus(1); + eventDO.setGridMemberId(commonEventAddDTO.getUserId()); + eventDO.setGridMemberName(commonEventAddDTO.getUserName()); + eventDO.setGridMemberTelephone(commonEventAddDTO.getPhone()); + eventDO.setCreateBy(commonEventAddDTO.getUserId()); + if(eventMapper.insert(eventDO)==1){ + //添加音频 + if(StringUtils.isNotEmpty(commonEventAddDTO.getAudio())){ + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(2); + eventResourceDO.setUrl(commonEventAddDTO.getAudio()); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setCreateBy(commonEventAddDTO.getUserId()); + int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if(audioAdd!=1){ + throw new ServiceException("添加音频失败"); + } + } + //添加视频 + if(StringUtils.isNotEmpty(commonEventAddDTO.getVideo())){ + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(3); + eventResourceDO.setUrl(commonEventAddDTO.getVideo()); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setCreateBy(commonEventAddDTO.getUserId()); + int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if(videoAdd!=1){ + throw new ServiceException("添加视频失败"); + } + } + //添加图片 + if(StringUtils.isNotEmpty(commonEventAddDTO.getPics())){ + String[] pica = commonEventAddDTO.getPics().split(","); + for (int i = 0; i < pica.length; i++) { + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(1); + eventResourceDO.setUrl(pica[i]); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setCreateBy(commonEventAddDTO.getUserId()); + int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if(picAdd!=1){ + throw new ServiceException("添加图片失败"); + } + } + } + return R.ok(); + } + return R.fail(); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public R saveDraft(CommonEventEditDTO commonEventEditDTO) { + if(commonEventEditDTO.getId()==null) { + EventDO eventDO = new EventDO(); + BeanUtils.copyProperties(commonEventEditDTO, eventDO); + eventDO.setGridMemberId(commonEventEditDTO.getUserId()); + eventDO.setEventCategory(1l);//办件事件 + eventDO.setEventType(5);//突发事件分类 + eventDO.setEventStatus(1);//事件状态 1草稿 + eventDO.setProcessType(1);//网格员处理 + eventDO.setCommunityProcess(0);//非 社区处理 + eventDO.setCreateBy(commonEventEditDTO.getUserId()); + if (eventMapper.insert(eventDO) > 0) { + //添加音频 + if (StringUtils.isNotEmpty(commonEventEditDTO.getAudio())) { + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(2); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setUrl(commonEventEditDTO.getAudio()); + eventResourceDO.setCreateBy(commonEventEditDTO.getUserId()); + int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if (audioAdd != 1) { + throw new ServiceException("添加音频失败"); + } + } + //添加视频 + if (StringUtils.isNotEmpty(commonEventEditDTO.getVideo())) { + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(3); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setUrl(commonEventEditDTO.getVideo()); + eventResourceDO.setCreateBy(commonEventEditDTO.getUserId()); + int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if (videoAdd != 1) { + throw new ServiceException("添加视频失败"); + } + } + //添加图片 + if (StringUtils.isNotEmpty(commonEventEditDTO.getPics())) { + String[] pica = commonEventEditDTO.getPics().split(","); + for (int i = 0; i < pica.length; i++) { + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(1); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setUrl(pica[i]); + eventResourceDO.setCreateBy(commonEventEditDTO.getUserId()); + int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if (picAdd != 1) { + throw new ServiceException("添加图片失败"); + } + } + } + return R.ok(); + } + return R.fail(); + }else{ + //编辑原来的 + EventDO eventDO = eventMapper.selectById(commonEventEditDTO.getId()); + BeanUtils.copyProperties(commonEventEditDTO, eventDO); + eventDO.setGridMemberId(commonEventEditDTO.getUserId()); + eventDO.setEventCategory(1l);//办件事件 + eventDO.setEventType(5);//突发事件分类 + eventDO.setEventStatus(1);//事件状态 2发布 + eventDO.setProcessType(1);//网格员处理 + eventDO.setCommunityProcess(0);//非 社区处理 + eventDO.setUpdateBy(commonEventEditDTO.getUserId()); + if (eventMapper.updateById(eventDO) > 0) { + int deleted = eventResourceService.getBaseMapper() + .delete(new LambdaQueryWrapper<EventResourceDO>() + .eq(EventResourceDO::getClassification,1) + .eq(EventResourceDO::getRefId, eventDO.getId())); + //添加音频 + if (StringUtils.isNotEmpty(commonEventEditDTO.getAudio())) { + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(2); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setUrl(commonEventEditDTO.getAudio()); + eventResourceDO.setCreateBy(commonEventEditDTO.getUserId()); + int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if (audioAdd != 1) { + throw new ServiceException("添加音频失败"); + } + } + //添加视频 + if (StringUtils.isNotEmpty(commonEventEditDTO.getVideo())) { + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(3); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setUrl(commonEventEditDTO.getVideo()); + eventResourceDO.setCreateBy(commonEventEditDTO.getUserId()); + int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if (videoAdd != 1) { + throw new ServiceException("添加视频失败"); + } + } + //添加图片 + if (StringUtils.isNotEmpty(commonEventEditDTO.getPics())) { + String[] pica = commonEventEditDTO.getPics().split(","); + for (int i = 0; i < pica.length; i++) { + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(1); + eventResourceDO.setType(1); + eventResourceDO.setRefId(eventDO.getId()); + eventResourceDO.setUrl(pica[i]); + eventResourceDO.setCreateBy(commonEventEditDTO.getUserId()); + int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if (picAdd != 1) { + throw new ServiceException("添加图片失败"); + } + } + } + return R.ok(); + } + return R.fail(); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public R report(CommonEventReportDTO commonEventReportDTO) { + EventDO eventDO = this.getBaseMapper().selectById(commonEventReportDTO.getEventId()); + if(eventDO==null){ + return R.fail("事件不存在"); + } + if(eventDO.getEventStatus()!=2){ + return R.fail("当前事件不能上报社区"); + } + if(eventDO.getProcessType()==2){ + return R.fail("当前事件已交由社区处理"); + } + eventDO.setCommunityProcess(1); //社区处理 + eventDO.setProcessType(2); //当前处理对象: 社区处理 + eventDO.setEventProcessStatus(1); //待处理 + eventDO.setUpdateBy(commonEventReportDTO.getUserId()); + int updated = this.getBaseMapper().updateById(eventDO); + if(updated!=1){ + throw new ServiceException("更新突发事件状态更新失败"); + } + EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO(); + BeanUtils.copyProperties(commonEventReportDTO, eventTransferRecordDO); + eventTransferRecordDO.setFromType(1); + eventTransferRecordDO.setFromId(commonEventReportDTO.getUserId()); + eventTransferRecordDO.setFromName(commonEventReportDTO.getUserName()); + eventTransferRecordDO.setToType(2);//转交类型:2、社区 + eventTransferRecordDO.setProcessDate(new Date()); + int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO); + return inserted==1?R.ok():R.fail(); + } + + @Override + public R emergenciesRevoke(EventRevokeDTO eventRevokeDTO) { + EventDO eventDO = this.getBaseMapper().selectById(eventRevokeDTO.getId()); + if(eventDO==null){ + return R.fail("事件不存在"); + } + boolean canRevoke = eventDO.getEventStatus()==2 //发布状态 + && eventDO.getEventProcessStatus()==1 //待处理 + ; + if(!canRevoke){ + return R.fail("当前事件不允许撤销"); + } + eventDO.setEventStatus(4); + eventDO.setUpdateBy(eventRevokeDTO.getUserId()); + eventDO.setEventType(5);//突发事件分类 + eventDO.setProcessType(1);//网格员处理 + eventDO.setCommunityProcess(0);//非 社区处理 + int updated = this.getBaseMapper().updateById(eventDO); + return updated==1?R.ok():R.fail(); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public R dealEvent(CommonEventDealDTO commonEventDealDTO) { + EventDO eventDO = this.getBaseMapper().selectById(commonEventDealDTO.getId()); + boolean canDealByUser = eventDO.getEventStatus()==2 && eventDO.getEventProcessStatus()==1; + if(!canDealByUser){ + if(eventDO.getEventStatus()!=2){ + return R.fail("事件不是发布状态"); + } + if(eventDO.getEventProcessStatus()!=1){ + return R.fail("事件不是待处理状态"); + } + return R.fail("事件当前不可自处理"); + } + + eventDO.setEventProcessStatus(2);//2已解决 + eventDO.setUpdateBy(commonEventDealDTO.getUserId()); + + //更新出利润信息 + eventDO.setProcessUserId(commonEventDealDTO.getUserId()); + eventDO.setProcessUserName(commonEventDealDTO.getUserName()); + eventDO.setProcessDate(new Date()); + eventDO.setProcessDesc(commonEventDealDTO.getProcessResult()); + + int updated = this.getBaseMapper().updateById(eventDO); + if(updated!=1){ + return R.fail("更新事件状态失败"); + } + + EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO(); + BeanUtils.copyProperties(commonEventDealDTO, eventTransferRecordDO); + eventTransferRecordDO.setFromType(1); + eventTransferRecordDO.setFromId(commonEventDealDTO.getUserId()); + eventTransferRecordDO.setFromName(commonEventDealDTO.getUserName()); + eventTransferRecordDO.setToType(1); + eventTransferRecordDO.setToId(commonEventDealDTO.getUserId()); + eventTransferRecordDO.setProcessDate(new Date()); + eventTransferRecordDO.setEventId(eventDO.getId()); + int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO); + if(inserted==1){ + //添加音频 + if(StringUtils.isNotEmpty(commonEventDealDTO.getAudio())){ + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(3); + eventResourceDO.setType(2); + eventResourceDO.setUrl(commonEventDealDTO.getAudio()); + eventResourceDO.setRefId(eventTransferRecordDO.getId()); + eventResourceDO.setCreateBy(commonEventDealDTO.getUserId()); + int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if(audioAdd!=1){ + throw new ServiceException("添加音频失败"); + } + } + //添加视频 + if(StringUtils.isNotEmpty(commonEventDealDTO.getVideo())){ + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(3); + eventResourceDO.setType(3); + eventResourceDO.setUrl(commonEventDealDTO.getVideo()); + eventResourceDO.setRefId(eventTransferRecordDO.getId()); + eventResourceDO.setCreateBy(commonEventDealDTO.getUserId()); + int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if(videoAdd!=1){ + throw new ServiceException("添加视频失败"); + } + } + //添加图片 + if(StringUtils.isNotEmpty(commonEventDealDTO.getPics())){ + String[] pica = commonEventDealDTO.getPics().split(","); + for (int i = 0; i < pica.length; i++) { + EventResourceDO eventResourceDO = new EventResourceDO(); + eventResourceDO.setClassification(3); + eventResourceDO.setType(1); + eventResourceDO.setUrl(pica[i]); + eventResourceDO.setRefId(eventTransferRecordDO.getId()); + eventResourceDO.setCreateBy(commonEventDealDTO.getUserId()); + int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO); + if(picAdd!=1){ + throw new ServiceException("添加图片失败"); + } + } + } + return R.ok(); + }else{ + throw new ServiceException("处理事件记录出错"); + } + } + + @Override + public R verifyEvent(CommonEventVerifyDTO commonEventVerifyDTO) { + EventDO eventDO = this.getBaseMapper().selectById(commonEventVerifyDTO.getId()); + boolean canVerifyByUser = eventDO.getEventProcessStatus()==3; + if(!canVerifyByUser){ + return R.fail("当前不是待验证状态"); + } + boolean processTypeRight = eventDO.getProcessType()==1; + if(!processTypeRight){ + return R.fail("当前处理对象不是网格员"); + } + + eventDO.setEventProcessStatus(2);//2已解决 + eventDO.setUpdateBy(commonEventVerifyDTO.getUserId()); + int updated = this.getBaseMapper().updateById(eventDO); + if(updated!=1){ + return R.fail("更新事件状态失败"); + } + EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO(); + eventTransferRecordDO.setFromType(1); + eventTransferRecordDO.setFromId(commonEventVerifyDTO.getUserId()); + eventTransferRecordDO.setFromName(commonEventVerifyDTO.getUserName()); + eventTransferRecordDO.setToType(1); + eventTransferRecordDO.setToId(commonEventVerifyDTO.getUserId()); + eventTransferRecordDO.setProcessDate(new Date()); + eventTransferRecordDO.setToName(commonEventVerifyDTO.getUserName()); + eventTransferRecordDO.setEventId(eventDO.getId()); + int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO); + if(inserted==1){ + return R.ok(); + }else{ + throw new ServiceException("事件处理添加出错"); + } + } + + @Override + public R republishEvent(CommonEventRepublicDTO commonEventRepublicDTO) { + EventDO eventDO = this.getBaseMapper().selectById(commonEventRepublicDTO.getId()); + boolean canRepublishByUser = eventDO.getEventStatus()==4; + if(!canRepublishByUser){ + return R.fail("当前不是撤销状态"); + } + + eventDO.setEventStatus(2);//2已解决 + eventDO.setUpdateBy(commonEventRepublicDTO.getUserId()); + int updated = this.getBaseMapper().updateById(eventDO); + if(updated!=1){ + return R.fail("更新事件状态失败"); + } + EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO(); + eventTransferRecordDO.setFromType(1); + eventTransferRecordDO.setFromId(commonEventRepublicDTO.getUserId()); + eventTransferRecordDO.setFromName(commonEventRepublicDTO.getUserName()); + eventTransferRecordDO.setToType(1); + eventTransferRecordDO.setToId(commonEventRepublicDTO.getUserId()); + eventTransferRecordDO.setProcessDate(new Date()); + eventTransferRecordDO.setEventId(eventDO.getId()); + int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO); + if(inserted==1){ + return R.ok(); + }else{ + throw new ServiceException("事件处理添加出错"); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public R draftRelease(CommonEventPublicDTO commonEventPublicDTO) { + EventDO eventDO = this.getBaseMapper().selectById(commonEventPublicDTO.getId()); + boolean draftCanRelease = eventDO.getEventStatus()==1; + if(!draftCanRelease){ + return R.fail("当前不是草稿状态"); + } + + eventDO.setEventStatus(2);//事件状态 2发布 + eventDO.setProcessType(1);//当前处理对象类型:网格员处理 + eventDO.setCommunityProcess(0);//非 社区处理 + eventDO.setEventProcessStatus(1);//待处理 + eventDO.setUpdateBy(commonEventPublicDTO.getUserId()); + int updated = this.getBaseMapper().updateById(eventDO); + if(updated!=1){ + return R.fail("更新事件状态失败"); + } + EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO(); + eventTransferRecordDO.setFromType(1);//来源类型 1、网格员 + eventTransferRecordDO.setFromId(commonEventPublicDTO.getUserId()); + eventTransferRecordDO.setFromName(commonEventPublicDTO.getUserName()); + eventTransferRecordDO.setToType(1);//转交类型 1、网格员 + eventTransferRecordDO.setToId(commonEventPublicDTO.getUserId()); + eventTransferRecordDO.setProcessDate(new Date()); + eventTransferRecordDO.setEventId(eventDO.getId()); + int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO); + if(inserted==1){ + return R.ok(); + }else{ + throw new ServiceException("事件处理添加出错"); + } + } + } -- Gitblit v1.7.1