From a5ebd7103f2375c8c241c6f14c586c7d75b0dd79 Mon Sep 17 00:00:00 2001 From: CeDo <cedoogle@gmail.com> Date: 星期六, 05 六月 2021 18:44:36 +0800 Subject: [PATCH] Merge branch 'test_future_wangge' into test --- springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java | 60 +++++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 43 insertions(+), 17 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 c1edcd6..6cddbb5 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 @@ -387,8 +387,8 @@ }else{ //编辑原来的 EventDO eventDO = eventMapper.selectById(commonEventEditDTO.getId()); - if(eventDO.getEventStatus()!=null && eventDO.getEventStatus()!=1){ - return R.fail("保存草稿失败,事件不是草稿状态"); + if(eventDO.getEventStatus()!=null && eventDO.getEventStatus()!=1 && eventDO.getEventDealStatus()!=6){ + return R.fail("保存草稿失败,事件不是草稿/已撤销状态"); } BeanUtils.copyProperties(commonEventEditDTO, eventDO); eventDO.setGridMemberId(commonEventEditDTO.getUserId()); @@ -485,7 +485,7 @@ if(updated!=1){ throw new ServiceException("更新突发事件状态更新失败"); } - addTransferRecord(eventDO.getId(), commonEventReportDTO.getToId(), comActVO.getName(), 2, commonEventReportDTO.getProcessResult()); + addTransferRecord(eventDO.getId(), commonEventReportDTO.getToId(), comActVO.getName(), 2, commonEventReportDTO.getProcessResult(),2); return R.ok(); } @@ -499,11 +499,10 @@ } boolean canRevoke = eventDO.getEventStatus()==2; //发布状态 if(!canRevoke){ - return R.fail("当前事件不允许撤销"); + return R.fail("当前事件不允许·"); } - if(eventDO.getEventCategory()!=null && eventDO.getEventCategory().intValue()==2){//宣传教育事件 - //不做验证 - }else if(eventDO.getEventProcessStatus()==2 ||eventDO.getEventProcessStatus()==3) { //已解决 或者 待验证 不允许撤销 + Integer eventProcessStatus = eventDO.getEventProcessStatus()!=null?eventDO.getEventProcessStatus():-1; + if(eventProcessStatus==2 ||eventProcessStatus==3) { //已解决 或者 待验证 不允许撤销 return R.fail("当前事件不允许撤销"); } eventDO.setEventStatus(4); @@ -512,7 +511,8 @@ eventDO.setCommunityProcess(0);//非 社区处理 int updated = this.getBaseMapper().updateById(eventDO); if(updated == 1){ - addTransferRecord(eventDO.getId(), eventRevokeDTO.getUserId(), eventRevokeDTO.getUserName(), 1,"撤销成功"); + addTransferRecord(eventDO.getId(), eventRevokeDTO.getUserId(), eventRevokeDTO.getUserName(), + 1,"撤销成功", eventRevokeDTO.getUserId(), eventRevokeDTO.getUserName(), 7); return R.ok(); } return R.fail(); @@ -549,8 +549,14 @@ if(updated!=1){ return R.fail("更新事件状态失败"); } + Integer processType = -1; + if(eventDO.getInvalid()!=null){ + processType = 5; + }else{ + processType = 1; + } EventTransferRecordDO transferRecordDO = - addTransferRecord(eventDO.getId(), commonEventDealDTO.getUserId(), commonEventDealDTO.getUserName(),1, "网格员自处理完成"); + addTransferRecord(eventDO.getId(), commonEventDealDTO.getUserId(), commonEventDealDTO.getUserName(),1, "网格员自处理完成", processType); if(transferRecordDO!=null && transferRecordDO.getId()!=null){ //添加音频 if(StringUtils.isNotEmpty(commonEventDealDTO.getAudio())){ @@ -630,7 +636,7 @@ if(updated!=1){ return R.fail("更新事件状态失败"); } - addTransferRecord(eventDO.getId(), commonEventVerifyDTO.getUserId(), commonEventVerifyDTO.getUserName(), 1, commonEventVerifyDTO.getProcessResult()); + addTransferRecord(eventDO.getId(), commonEventVerifyDTO.getUserId(), commonEventVerifyDTO.getUserName(), 1, commonEventVerifyDTO.getProcessResult(), 6); return R.ok(); } @@ -650,7 +656,7 @@ if(updated!=1){ return R.fail("更新事件状态失败"); } - addTransferRecord(eventDO.getId(), commonEventRepublishDTO.getUserId(), commonEventRepublishDTO.getUserName(), 1, "重新发布已撤销事件"); + addTransferRecord(eventDO.getId(), commonEventRepublishDTO.getUserId(), commonEventRepublishDTO.getUserName(), 1, "重新发布已撤销事件", 8); return R.ok(); } @@ -1049,8 +1055,8 @@ }else{ //编辑原来的 EventDO eventDO = eventMapper.selectById(publicityEventEditDTO.getId()); - if(eventDO.getEventStatus()!=null && eventDO.getEventStatus()!=1){ - return R.fail("保存草稿失败,事件不是草稿状态"); + if(eventDO.getEventStatus()!=null && eventDO.getEventStatus()!=1 && eventDO.getEventDealStatus()!=6){ + return R.fail("保存草稿失败,事件不是草稿/撤销状态"); } BeanUtils.copyProperties(publicityEventEditDTO, eventDO); eventDO.setGridMemberId(publicityEventEditDTO.getUserId()); @@ -1249,13 +1255,14 @@ return R.fail("事件所属错误"); } eventDO.setInvalid(false); + //标为无效后, 交给网格员处理 eventDO.setUpdateBy(eventRevokeDTO.getUserId()); eventDO.setEventStatus(4);//4、撤销 eventDO.setProcessType(1);//网格员处理 eventDO.setCommunityProcess(0);//非 社区处理 int updated = this.getBaseMapper().updateById(eventDO); if(updated == 1){ - addTransferRecord(eventDO.getId(), eventRevokeDTO.getUserId(), eventRevokeDTO.getUserName(), 1,"撤销成功"); + addTransferRecord(eventDO.getId(), eventRevokeDTO.getUserId(), eventRevokeDTO.getUserName(), 1,"标为无效", eventRevokeDTO.getCommunityId(), eventRevokeDTO.getCommunityName(), 4); return R.ok(); } return R.fail(); @@ -1274,7 +1281,7 @@ eventDO.setInvalid(true); int updated = this.getBaseMapper().updateById(eventDO); if(updated == 1){ - addTransferRecord(eventDO.getId(), commonEventRepublishDTO.getUserId(), commonEventRepublishDTO.getUserName(), 1,"重新发布事件成功"); + addTransferRecord(eventDO.getId(), commonEventRepublishDTO.getUserId(), commonEventRepublishDTO.getUserName(), 1,"重新发布事件成功", 9 ); return R.ok(); } return R.fail(); @@ -1310,7 +1317,7 @@ return R.fail("更新事件状态失败"); } EventTransferRecordDO transferRecordDO = - addTransferRecord(eventDO.getId(), commonEventDealDTO.getUserId(), commonEventDealDTO.getUserName(),1, "社区处理完成"); + addTransferRecord(eventDO.getId(), commonEventDealDTO.getUserId(), commonEventDealDTO.getUserName(),1, "社区处理完成", 3); if(transferRecordDO!=null && transferRecordDO.getId()!=null){ //添加音频 if(StringUtils.isNotEmpty(commonEventDealDTO.getAudio())){ @@ -1436,6 +1443,7 @@ eventTransferRecordDO.setProcessDate(new Date()); eventTransferRecordDO.setEventId(eventId); eventTransferRecordDO.setProcessResult("发布成功"); + eventTransferRecordDO.setProcessType(1);//初始状态 int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO); if(inserted!=1){ throw new ServiceException("事件流转记录添加失败"); @@ -1443,6 +1451,7 @@ this.updateEventDealStatus(eventId); return eventTransferRecordDO; } + /** * 查询最后的流转记录,并添加事件流转记录 @@ -1453,7 +1462,7 @@ * @param msg 流转消息 * @return */ - private EventTransferRecordDO addTransferRecord(Long eventId, Long toId, String toName, Integer toType, String msg){ + private EventTransferRecordDO addTransferRecord(Long eventId, Long toId, String toName, Integer toType, String msg, Long processBy, String processByName, Integer processType){ List<EventTransferRecordDO> list = eventTransferRecordService.getBaseMapper().selectList(new LambdaQueryWrapper<EventTransferRecordDO>() .eq(EventTransferRecordDO::getEventId, eventId) .orderByDesc(EventTransferRecordDO::getCreateAt) @@ -1472,6 +1481,9 @@ eventTransferRecordDO.setToName(toName); eventTransferRecordDO.setEventId(eventId); eventTransferRecordDO.setProcessResult(msg); + eventTransferRecordDO.setProcessBy(processBy); + eventTransferRecordDO.setProcessByName(processByName); + eventTransferRecordDO.setProcessType(processType); int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO); if(inserted==1) { this.updateEventDealStatus(eventId); @@ -1481,6 +1493,20 @@ } } + + /** + * 查询最后的流转记录,并添加事件流转记录 + * @param eventId 事件ID + * @param toId 流转到 ID + * @param toName 流转到 名称 + * @param toType 发送类型 + * @param msg 流转消息 + * @return + */ + private EventTransferRecordDO addTransferRecord(Long eventId, Long toId, String toName, Integer toType, String msg,Integer processType){ + return addTransferRecord(eventId, toId, toName, toType, msg, null, null, processType); + } + /** * 根据子状态 查询用户事件处理状态 * @param eventId 事件ID -- Gitblit v1.7.1