From 9b8a37d4beecb1d95cd0863d8ebda29e6624f950 Mon Sep 17 00:00:00 2001 From: 张天森 <1292933220@qq.com> Date: 星期二, 05 七月 2022 13:41:02 +0800 Subject: [PATCH] update --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java | 129 ++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 126 insertions(+), 3 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java index b3c1b88..3cd5ced 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java @@ -1,14 +1,13 @@ package com.panzhihua.service_community.service.impl; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import java.util.*; import javax.annotation.Resource; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.service.user.UserService; import com.panzhihua.service_community.service.ComActNeighborCircleTopicService; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -70,6 +69,10 @@ private UserService userService; @Resource private ComPbMemberDAO comPbMemberDAO; + @Resource + private ComActActivityDAO comActActivityDAO; + @Resource ComActNeighborCircleDAO comActNeighborCircleDAO; + /** * 分页查询邻里圈列表 * @@ -979,4 +982,124 @@ } return R.ok(this.baseMapper.updateById(comActNeighborCircleDO)); } + + @Override + public R serviceStatic(ServiceStaticDTO serviceStaticDTO) { + ServiceStaticsVO serviceStaticsVO=new ServiceStaticsVO(); + if(serviceStaticDTO.getCheckUnitId()!=null){ + serviceStaticsVO=this.baseMapper.selectStatsCheckUnit(serviceStaticDTO.getCheckUnitId(),serviceStaticDTO.getYear()); + serviceStaticsVO=this.baseMapper.selectStatsCheckUnit(serviceStaticDTO.getCheckUnitId(),serviceStaticDTO.getYear()); + serviceStaticsVO.setServiceProjecList(this.baseMapper.selectListByCheckUnitId(serviceStaticDTO.getCheckUnitId(),serviceStaticDTO.getYear())); + serviceStaticsVO.setServiceActivityList(comActActivityDAO.selectListByRelationId(serviceStaticDTO.getCheckUnitId(),serviceStaticDTO.getYear())); + } + else { + serviceStaticsVO=this.baseMapper.selectStatsUser(serviceStaticDTO.getPhone(),serviceStaticDTO.getYear()); + serviceStaticsVO.setServiceProjecList(this.baseMapper.selectListByPhone(serviceStaticDTO.getPhone(),serviceStaticDTO.getYear())); + ComPbMemberDO comPbMemberDO=comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda().eq(ComPbMemberDO::getPhone,serviceStaticDTO.getPhone()).last("limit 1")); + if(comPbMemberDO!=null){ + serviceStaticsVO.setWorkActivityList(comActActivityDAO.selectListByRelationId(comPbMemberDO.getCheckUnitId(),serviceStaticDTO.getYear())); + serviceStaticsVO.setServiceActivityList(comActActivityDAO.selectListByCommunityId(comPbMemberDO.getCommunityId(),serviceStaticDTO.getYear())); + } + + } + return R.ok(serviceStaticsVO); + } + + @Override + public R institutionalUnitServiceAnalysis(Integer year, Integer type, Integer range, Long communityId) { + ActivityAnalysisVO activityVO=new ActivityAnalysisVO(); + String beginTime=null; + String endTime=null; + if (null != year){ + //设置开始,截止时间 + beginTime=year.toString().concat("-01-01"); + endTime=year.toString().concat("-12-31"); + } + //统计党员,单位总数 + activityVO.setPartyMemberCount(comActDAO.selectUnitCount()); + activityVO.setUnitCount(comActDAO.selectMemberCount()); + //获取单位活动统计数据(邻里圈) + List<UnitActivityAnalysisVO> unitActivityAnalysisVOS = comActNeighborCircleDAO.institutionalUnitServiceAnalysis(beginTime, endTime, communityId); + //获取单位活动统计数据(活动) + List<UnitActivityAnalysisVO> unitActivityAnalysisVOS1 = comActNeighborCircleDAO.institutionalUnitActivityAnalysis(beginTime, endTime, communityId); + if (unitActivityAnalysisVOS.size()>0){ + for (UnitActivityAnalysisVO unitActivityAnalysisVO : unitActivityAnalysisVOS){ + if (ObjectUtils.isNotEmpty(unitActivityAnalysisVO)){ + if (ObjectUtils.isNotEmpty(unitActivityAnalysisVO.getUnitId())){ + //设置单位名称 + unitActivityAnalysisVO.setUnitName(comActDAO.selectUnitName(unitActivityAnalysisVO.getUnitId())); + //统计活动表中的活动信息 + } + if (ObjectUtils.isNotEmpty(unitActivityAnalysisVO.getCommunityId())){ + unitActivityAnalysisVO.setCommunityName(comActDAO.selectById(unitActivityAnalysisVO.getCommunityId()).getName()); + } + } + } + } + //活动表数据处理 + if (unitActivityAnalysisVOS1.size()>0){ + for (UnitActivityAnalysisVO vo : unitActivityAnalysisVOS1) { + if(ObjectUtils.isNotEmpty(vo)){ + if (ObjectUtils.isNotEmpty(vo.getUnitId())){ + //判断邻里圈统计中是否已有该单位数据 + Map<String, Integer> param = alreadyAnalysis(vo.getUnitId(), unitActivityAnalysisVOS); + if (param.get("flag")==1){ + //已有数据,将时长,次数相加 + Integer serviceTime = vo.getServiceTime(); + Integer serviceTimes = vo.getServiceTimes(); + unitActivityAnalysisVOS.get(param.get("index")).setServiceTime(unitActivityAnalysisVOS.get(param.get("index")).getServiceTime()+serviceTime); + unitActivityAnalysisVOS.get(param.get("index")).setServiceTimes(unitActivityAnalysisVOS.get(param.get("index")).getServiceTimes()+serviceTimes); + }else { + //新数据,获取单位,社区名 + vo.setUnitName(comActDAO.selectUnitName(vo.getUnitId())); + if (ObjectUtils.isNotEmpty(vo.getCommunityId())) { + vo.setCommunityName(comActDAO.selectById(vo.getCommunityId()).getName()); + } + unitActivityAnalysisVOS.add(vo); + } + } + } + } + } + //获取党员活动统计数据 + List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, communityId); + activityVO.setUnitList(unitActivityAnalysisVOS); + activityVO.setPartyMemberList(partyMemberAnalysisVOS); + return R.ok(activityVO); + + } + + + @Override + public R serviceStaticBackstage(ServiceStaticBackstageDTO serviceStaticDTO) { + return null; + } + + /** + * 判断活动统计列表中是否已有该单位的数据 + * */ + public Map<String,Integer> alreadyAnalysis(Long unitId,List<UnitActivityAnalysisVO> list){ + Map<String,Integer> map=new HashMap<>(); + if (list.size()>0){ + for (int i=0;i<list.size();i++) { + UnitActivityAnalysisVO vo = list.get(i); + if (ObjectUtils.isNotEmpty(vo)){ + if (ObjectUtils.isNotEmpty(vo.getUnitId())){ + if (unitId.equals(vo.getUnitId())){ + map.put("index",i ); + map.put("flag",1 ); + return map; + } + } + } + } + } + map.put("flag",0 ); + return map; + } + + + + + } -- Gitblit v1.7.1