| | |
| | | package com.panzhihua.service_community.service.impl; |
| | | |
| | | import cn.hutool.core.collection.CollectionUtil; |
| | | import cn.hutool.core.collection.ListUtil; |
| | | import cn.hutool.core.util.PageUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | |
| | | import com.panzhihua.common.model.dtos.neighbor.*; |
| | | import com.panzhihua.common.model.vos.PageVO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.common.PbCheckUnitStatisticsVo; |
| | | import com.panzhihua.common.model.vos.neighbor.*; |
| | | import com.panzhihua.common.model.vos.user.AdministratorsUserVO; |
| | | import com.panzhihua.common.service.user.UserService; |
| | |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.math.BigDecimal; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | } |
| | | |
| | | @Override |
| | | public R institutionalUnitServiceAnalysis(Integer year, Integer type, Integer range, Long communityId,Integer page,Integer size,String belongTo,Long unitId) { |
| | | public R institutionalUnitServiceAnalysis(Integer year, Integer type, Integer range, Long communityId, |
| | | Integer page,Integer size,String belongTo,Long unitId,String searchContent) { |
| | | ActivityAnalysisVO activityVO=new ActivityAnalysisVO(); |
| | | String beginTime=null; |
| | | String endTime=null; |
| | |
| | | } |
| | | } |
| | | //获取党员活动统计数据 |
| | | List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo,communityId,unitId); |
| | | List<PartyMemberAnalysisVO> partyMemberAnalysisVOS1 = comActNeighborCircleDAO.institutionalPartyMemberActAnalysis(beginTime, endTime, belongTo,communityId,unitId); |
| | | List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo,communityId,unitId,searchContent); |
| | | List<PartyMemberAnalysisVO> partyMemberAnalysisVOS1 = comActNeighborCircleDAO.institutionalPartyMemberActAnalysis(beginTime, endTime, belongTo,communityId,unitId,searchContent); |
| | | if (partyMemberAnalysisVOS1.size()>0){ |
| | | for (PartyMemberAnalysisVO vo : partyMemberAnalysisVOS1) { |
| | | if (ObjectUtils.isNotEmpty(vo)){ |
| | |
| | | List<NewFightNeedProblemClaim> inventories = newFightNeedProblemClaimMapper.selectList(wrapper); |
| | | Map<String, Long> collectMap = inventories.stream() |
| | | .collect(Collectors.groupingBy(NewFightNeedProblemClaim::getTaskId, Collectors.counting())); |
| | | long sum = 0L; |
| | | long sum = 0l; |
| | | if(unitVO.getAwardSum()!=null || unitVO.getAwardSum()!=0l ) |
| | | { |
| | | sum=unitVO.getAwardSum(); |
| | | } |
| | | //任务id集合 |
| | | List<String> taskIds = inventories.stream().map(NewFightNeedProblemClaim::getTaskId).distinct().collect(Collectors.toList()); |
| | | for (String taskId : taskIds) { |
| | |
| | | LambdaQueryWrapper<NewFightNeedProblemClaim> wrapper = new LambdaQueryWrapper<>(); |
| | | wrapper.eq(NewFightNeedProblemClaim::getUserId,userId); |
| | | List<NewFightNeedProblemClaim> newFightNeedProblemInventories = newFightNeedProblemClaimMapper.selectList(wrapper); |
| | | long sumAward = 0L; |
| | | long sumAward = 0l; |
| | | |
| | | if(memberAnalysisVO.getPartyCount()!=null || memberAnalysisVO.getPartyCount()!=0l ) |
| | | { |
| | | sumAward=memberAnalysisVO.getPartyCount(); |
| | | } |
| | | |
| | | for (NewFightNeedProblemClaim inventory : newFightNeedProblemInventories) { |
| | | String taskId = inventory.getTaskId(); |
| | | NewFightNeedProblemInventory newFightNeedProblemInventory = newFightNeedProblemInventoryMapper.selectById(taskId); |
| | |
| | | //按时长排序 |
| | | ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTime"); |
| | | ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTime"); |
| | | |
| | | ListUtil.reverse(unitActivityAnalysisVOS); |
| | | ListUtil.reverse(partyMemberAnalysisVOS); |
| | | |
| | | }else if (type.equals(2)){ |
| | | //按次数排序 |
| | | ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTimes"); |
| | | ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTimes"); |
| | | |
| | | ListUtil.reverse(unitActivityAnalysisVOS); |
| | | ListUtil.reverse(partyMemberAnalysisVOS); |
| | | }else if(type.equals(3)){ |
| | | //按积分排序 |
| | | ListUtil.sortByProperty(unitActivityAnalysisVOS,"awardSum"); |
| | | ListUtil.reverse(unitActivityAnalysisVOS); |
| | | // ListUtil.sortByProperty(unitActivityAnalysisVOS,""); |
| | | } |
| | | } |
| | |
| | | } |
| | | activityVO.setUnitList(unitPage); |
| | | activityVO.setPartyMemberList(memberPage); |
| | | |
| | | //党员数据 聚合 |
| | | Map<String, Long> map = new HashMap<>(); |
| | | partyMemberAnalysisVOS.forEach(vo->{ |
| | | String name = vo.getBelongTo(); |
| | | Long time = Long.valueOf(vo.getServiceTime()); |
| | | if (map.containsKey(name)) { |
| | | time += map.get(name); |
| | | } |
| | | map.put(name, time); |
| | | }); |
| | | if(CollectionUtil.isNotEmpty(map)){ |
| | | List<PbCheckUnitStatisticsVo> list = new ArrayList<>(); |
| | | map.keySet().forEach(vo->{ |
| | | PbCheckUnitStatisticsVo dto = new PbCheckUnitStatisticsVo(); |
| | | dto.setBelongTo(vo); |
| | | dto.setServiceTime(map.get(vo)); |
| | | list.add(dto); |
| | | }); |
| | | activityVO.setGroupPartyCount(list); |
| | | } |
| | | return R.ok(activityVO); |
| | | |
| | | } |
| | |
| | | endTime=year.toString().concat("-12-31"); |
| | | } |
| | | //获取党员活动统计数据 |
| | | List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo,communityId,unitId); |
| | | List<PartyMemberAnalysisVO> partyMemberAnalysisVOS1 = comActNeighborCircleDAO.institutionalPartyMemberActAnalysis(beginTime, endTime, belongTo,communityId,unitId); |
| | | List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo,communityId,unitId,null); |
| | | List<PartyMemberAnalysisVO> partyMemberAnalysisVOS1 = comActNeighborCircleDAO.institutionalPartyMemberActAnalysis(beginTime, endTime, belongTo,communityId,unitId,null); |
| | | if (partyMemberAnalysisVOS1.size()>0){ |
| | | for (PartyMemberAnalysisVO vo : partyMemberAnalysisVOS1) { |
| | | if (ObjectUtils.isNotEmpty(vo)){ |