张天森
2022-07-08 3983e5809d0ed2ce551a157a1b5b326b217c9b9c
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java
@@ -35,6 +35,7 @@
import com.panzhihua.service_community.service.ComActNeighborCircleService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.CollectionUtils;
/**
 * @auther lyq
@@ -1037,7 +1038,7 @@
    }
    @Override
    public R institutionalUnitServiceAnalysis(Integer year, Integer type, Integer range, Long communityId,Integer page,Integer size,String belongTo) {
    public R institutionalUnitServiceAnalysis(Integer year, Integer type, Integer range, Long communityId,Integer page,Integer size,String belongTo,Long unitId) {
        ActivityAnalysisVO activityVO=new ActivityAnalysisVO();
        String beginTime=null;
        String endTime=null;
@@ -1093,8 +1094,8 @@
            }
        }
        //获取党员活动统计数据
        List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo);
        List<PartyMemberAnalysisVO> partyMemberAnalysisVOS1 = comActNeighborCircleDAO.institutionalPartyMemberActAnalysis(beginTime, endTime, belongTo);
        List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo,communityId,unitId);
        List<PartyMemberAnalysisVO> partyMemberAnalysisVOS1 = comActNeighborCircleDAO.institutionalPartyMemberActAnalysis(beginTime, endTime, belongTo,communityId,unitId);
        if (partyMemberAnalysisVOS1.size()>0){
            for (PartyMemberAnalysisVO vo : partyMemberAnalysisVOS1) {
                if (ObjectUtils.isNotEmpty(vo)){
@@ -1145,17 +1146,23 @@
        activityVO.setPartyMemberServiceTotalCount(memberServiceCount);
        activityVO.setPartyMemberServiceTotalTime(memberServiceTotalTome);
        //处理排序
        if (null != type){
            if (type.equals(1)){
                //按时长排序
                ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTime");
                ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTime");
            }else if (type.equals(2)){
                //按次数排序
                ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTimes");
                ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTimes");
            }
        }
//        if (null != type){
//            if (type.equals(1)){
//                //按时长排序
//                ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTime");
//                ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTime");
//            }else if (type.equals(2)){
//                //按次数排序
//                ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTimes");
//                ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTimes");
//            }
//        }
        //统一进行排序,避免统计之后顺序混乱
        ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTime");
        partyMemberAnalysisVOS = ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTime");
        //执行倒序
        Collections.reverse(unitActivityAnalysisVOS);
        Collections.reverse(partyMemberAnalysisVOS);
        //处理分页
        PageVO<List<UnitActivityAnalysisVO>> unitPage=new PageVO<>();
        PageVO<List<PartyMemberAnalysisVO>> memberPage=new PageVO<>();
@@ -1175,8 +1182,34 @@
            unitPage.setRecords(unitActivityAnalysisVOS);
            memberPage.setRecords(partyMemberAnalysisVOS);
        }
        activityVO.setUnitList(unitPage);
        activityVO.setPartyMemberList(memberPage);
        activityVO.setUnitListByTime(unitPage);
        activityVO.setPartyMemberListByTime(memberPage);
        List<UnitActivityAnalysisVO> unitActivityAnalysisVOTimes=unitActivityAnalysisVOS;
        List<PartyMemberAnalysisVO> partyMemberAnalysisVOTimes=partyMemberAnalysisVOS;
        ListUtil.sortByProperty(unitActivityAnalysisVOTimes, "serviceTimes");
        ListUtil.sortByProperty(partyMemberAnalysisVOTimes, "serviceTimes");
        Collections.reverse(unitActivityAnalysisVOTimes);
        Collections.reverse(partyMemberAnalysisVOTimes);
        PageVO<List<UnitActivityAnalysisVO>> unitPage1=new PageVO<>();
        PageVO<List<PartyMemberAnalysisVO>> memberPage1=new PageVO<>();
        if (ObjectUtils.isNotEmpty(page) && ObjectUtils.isNotEmpty(size)){
            //分页处理
            unitPage1.setRecordsCount(unitActivityAnalysisVOS.size());
            unitPage1.setPage(page);
            unitPage1.setPages(getPages(unitPage.getRecordsCount(),size ));
            memberPage1.setPage(page);
            memberPage1.setRecordsCount(partyMemberAnalysisVOS.size());
            memberPage1.setPages(getPages(memberPage.getRecordsCount(), size));
            //处理分页的结果
            unitPage1.setRecords(subUnitList((ArrayList) unitActivityAnalysisVOTimes, page,size));
            memberPage1.setRecords(subUnitList((ArrayList)partyMemberAnalysisVOTimes,page ,size));
        }else {
            unitPage1.setRecords(unitActivityAnalysisVOS);
            memberPage1.setRecords(partyMemberAnalysisVOS);
        }
        activityVO.setPartyMemberByTimes(memberPage1);
        activityVO.setUnitListByTimes(unitPage1);
        return R.ok(activityVO);
    }