lidongdong
2023-02-27 f64dd13f70e8cfbc98e734356b81024f537a6e1d
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java
@@ -1,5 +1,6 @@
package com.panzhihua.service_grid.service.impl;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -170,11 +171,9 @@
     */
    @Override
    public R<EventDetailsVO> eventDetails(Long id) {
        EventDO eventDO = eventMapper.selectById(id);
        if (eventDO != null) {
            EventDetailsVO eventDetailsVO = new EventDetailsVO();
            BeanUtils.copyProperties(eventDO, eventDetailsVO);
            EventGridDataDO eventGridDataDO = eventGridDataMapper.selectById(eventDO.getGridId());
        EventDetailsVO eventDetailsVO = eventMapper.getById(id);
        if (eventDetailsVO != null) {
            EventGridDataDO eventGridDataDO = eventGridDataMapper.selectById(eventDetailsVO.getGridId());
            if (eventGridDataDO != null) {
                eventDetailsVO.setGridName(eventGridDataDO.getGridName());
                eventDetailsVO.setCommunityId(eventGridDataDO.getGridCommunityId());
@@ -252,17 +251,17 @@
            eventDetailsVO.setTrans(eventTransferRecordVOS);
            // 查询网格员头像,姓名
            Map<String, Object> gridMember = eventMapper.getUserBaseInfo(eventDO.getGridMemberId());
            Map<String, Object> gridMember = eventMapper.getUserBaseInfo(eventDetailsVO.getGridMemberId());
            if (!CollectionUtils.isEmpty(gridMember)) {
                eventDetailsVO.setGridMemberName(
                    gridMember.get("nick_name") == null ? "" : gridMember.get("nick_name").toString());
                eventDetailsVO.setGridMemberImageUrl(
                    gridMember.get("image_url") == null ? "" : gridMember.get("image_url").toString());
            }
            if (Objects.equals(eventDO.getGridMemberId(), eventDO.getCreateBy())) {
            if (Objects.equals(eventDetailsVO.getGridMemberId(), eventDetailsVO.getCreateBy())) {
                eventDetailsVO.setCreator(eventDetailsVO.getGridMemberName());
            } else {
                Map<String, Object> createUser = eventMapper.getUserBaseInfo(eventDO.getCreateBy());
                Map<String, Object> createUser = eventMapper.getUserBaseInfo(eventDetailsVO.getCreateBy());
                eventDetailsVO
                    .setCreator(createUser.get("nick_name") == null ? "" : createUser.get("nick_name").toString());
            }
@@ -1299,7 +1298,7 @@
    @Override
    public R<ComActVO> actList() {
        return communityService.listCommunityAll();
        return communityService.listCommunityAll(null);
    }
    @Override
@@ -1380,10 +1379,11 @@
        } else {
            return R.fail("事件所属错误");
        }
        eventDO.setInvalid(false);
//        eventDO.setInvalid(false);
        // 标为无效后, 交给网格员处理
        eventDO.setUpdateBy(eventRevokeDTO.getUserId());
        eventDO.setEventStatus(4);// 4、撤销
        eventDO.setEventDealStatus(6);// 4、撤销
        eventDO.setProcessType(1);// 网格员处理
        eventDO.setCommunityProcess(0);// 非 社区处理
        eventDO.setRevokeId(eventRevokeDTO.getRevokeId());
@@ -1403,11 +1403,13 @@
        if (eventDO == null) {
            return R.fail("事件不存在");
        }
        boolean canRepulish = eventDO.getEventDealStatus() == 7 | eventDO.getEventDealStatus() == 5; // 已失效状态
        boolean canRepulish = eventDO.getEventDealStatus() == 7 || eventDO.getEventDealStatus() == 5 || eventDO.getEventDealStatus() == 6; // 已失效状态
        if (!canRepulish) {
            return R.fail("当前事件不是已失效状态/草稿状态,不能重新发布");
            return R.fail("当前事件不是已失效状态/草稿状态/撤销状态,不能重新发布");
        }
        eventDO.setInvalid(true);
        eventDO.setEventStatus(2);
        eventDO.setEventDealStatus(1);
        int updated = this.getBaseMapper().updateById(eventDO);
        if (updated == 1) {
            addTransferRecord(eventDO.getId(), commonEventRepublishDTO.getUserId(),
@@ -2667,7 +2669,6 @@
                }
            });
        }
        statisticsVO.setGridIncidentList(eventResultList);
        // 查询所有小区
        List<CivilVillageStatisticsVO> villageStatisticsList =
                this.baseMapper.getCivilScreenVillageList(eventListDTO.getCommunityId());
@@ -2695,6 +2696,20 @@
        statisticsVO.setDrawEventPopulationTotalVO(drawEventPopulationTotalVO);
        statisticsVO.setAgeGroupStatistics(ageGroupStatistics);
        statisticsVO.generateStatisticsData();
        List<StatisticsCommVO> eventTypeCircleDrawData = new ArrayList<>();
        if (!eventResultList.isEmpty()) {
            Map<Integer, List<EventGridIncidentStatisticsVO>> collect = eventResultList.stream().collect(Collectors.groupingBy(EventGridIncidentStatisticsVO::getType));
            for (Map.Entry<Integer, List<EventGridIncidentStatisticsVO>> entry : collect.entrySet()) {
                StatisticsCommVO temp = new StatisticsCommVO();
                int size = entry.getValue().size();
                Integer eventTotal = statisticsVO.getEventTotal();
                temp.setFiled(entry.getKey().toString());
                temp.setNum(size);
                temp.setPercent(new BigDecimal(size/eventTotal).setScale(2));
                eventTypeCircleDrawData.add(temp);
            }
        }
        statisticsVO.setEventTypeCircleDrawData(eventTypeCircleDrawData);
        return R.ok(statisticsVO);
    }