From 70d2a5d0f9c6951b2d4cac954041ed73582ff7eb Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期一, 09 六月 2025 11:54:00 +0800 Subject: [PATCH] 6.9新增登录失败冻结逻辑 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java | 997 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 971 insertions(+), 26 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 af114ee..6986fd9 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,36 +1,49 @@ package com.panzhihua.service_community.service.impl; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -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.springframework.beans.BeanUtils; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - +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.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.common.constants.NeighborCircleConstants; +import com.panzhihua.common.model.dtos.ExcelDO; +import com.panzhihua.common.model.dtos.PartyExcelDO; 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.utlis.DateUtils; -import com.panzhihua.common.utlis.StringUtils; +import com.panzhihua.common.service.user.UserService; +import com.panzhihua.common.utlis.*; import com.panzhihua.service_community.dao.*; +import com.panzhihua.service_community.entity.ComPbCheckUnit; +import com.panzhihua.service_community.entity.NewFightNeedProblemClaim; +import com.panzhihua.service_community.entity.NewFightNeedProblemInventory; +import com.panzhihua.service_community.entity.SysUser; import com.panzhihua.service_community.model.dos.*; import com.panzhihua.service_community.service.ComActNeighborCircleBrowseService; import com.panzhihua.service_community.service.ComActNeighborCircleService; - +import com.panzhihua.service_community.service.ComActNeighborCircleTopicService; +import com.panzhihua.service_community.util.ExcelUtils; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.ObjectUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.math.BigDecimal; +import java.text.DecimalFormat; +import java.util.*; +import java.util.stream.Collectors; + /** * @auther lyq @@ -70,6 +83,18 @@ private UserService userService; @Resource private ComPbMemberDAO comPbMemberDAO; + @Resource + private ComActNeighborCircleDAO comActNeighborCircleDAO; + @Resource + private ComActActivityDAO comActActivityDAO; + @Resource + private ComPbCheckUnitDao comPbCheckUnitDao; + @Resource + private SysUserDao sysUserDao; + @Autowired + private NewFightNeedProblemClaimMapper newFightNeedProblemClaimMapper; + @Autowired + private NewFightNeedProblemInventoryMapper newFightNeedProblemInventoryMapper; /** * 分页查询邻里圈列表 * @@ -91,6 +116,15 @@ // } // } // } + Long communityId = neighborCircleAppDTO.getCommunityId(); + if(null != communityId){ + List<Long> communityIds = comActDAO.selectIds(communityId); + if (CollUtil.isEmpty(communityIds)) { + communityIds = new ArrayList<>(); + communityIds.add(communityId); + } + neighborCircleAppDTO.setCommunityIds(communityIds); + } Page userPage = new Page(neighborCircleAppDTO.getPageNum(), neighborCircleAppDTO.getPageSize()); IPage<ComActNeighborCircleAppVO> doPager = this.baseMapper.pageNeighborByApp(userPage, neighborCircleAppDTO); if (!doPager.getRecords().isEmpty()) { @@ -150,7 +184,9 @@ } } else { - circleAppVO.setCommunityName(actDO.getName()); + if (actDO != null) { + circleAppVO.setCommunityName(actDO.getName()); + } } } @@ -179,6 +215,7 @@ if (StringUtils.isNotEmpty(addNeighborCircleAppDTO.getPhone())) { neighborCircleDO.setReleasePhone(addNeighborCircleAppDTO.getPhone()); } + //判断当前邻里圈是否需要审核 if(addNeighborCircleAppDTO.getIsExamine().equals(AddComActNeighborCircleAppDTO.isExamine.no)){ //当邻里圈不需要审核才进入自动审核 @@ -226,6 +263,18 @@ circleDetailAppVO.setName(actDO.getName()); } } + if(circleDetailAppVO.getOrderType()!=null){ + if(circleDetailAppVO.getOrderType()==2){ + AdministratorsUserVO user1 = this.baseMapper.selectUserByUserId(circleDetailAppVO.getSolveId()); + circleDetailAppVO.setSolveName(SensitiveUtil.replaceName(user1.getName())); + } + if(circleDetailAppVO.getOrderType()==1){ + ComPbCheckUnit comPbCheckUnit=comPbCheckUnitDao.selectById(circleDetailAppVO.getSolveUnitId()); + if(comPbCheckUnit!=null){ + circleDetailAppVO.setSolveName(comPbCheckUnit.getName()); + } + } + } if (neighborCircleAppDTO.getUserId() != null) { // 查询邻里圈点赞信息 @@ -242,7 +291,12 @@ circleDetailAppVO.setHaveSign(2); } } - + ComActActivityDO comActActivityDO=comActActivityDAO.selectOne(new QueryWrapper<ComActActivityDO>().lambda().eq(ComActActivityDO::getRelationId,neighborCircleAppDTO.getCircleId())); + if(comActActivityDO!=null){ + circleDetailAppVO.setActivityDate(comActActivityDO.getCreateAt()); + circleDetailAppVO.setActivityId(comActActivityDO.getId()); + circleDetailAppVO.setActivityName(comActActivityDO.getActivityName()); + } // 查询邻里圈下评论列表 IPage<ComActNeighborCircleCommentAppVO> circleCommentAppPage = comActNeighborCircleCommentDAO.pageNeighborCommentByApp( @@ -305,6 +359,15 @@ @Override public R pageNeighborByAdmin(ComActNeighborCircleAdminDTO neighborCircleAdminDTO) { + Long communityId = neighborCircleAdminDTO.getCommunityId(); + if(null != communityId){ + List<Long> communityIds = comActDAO.selectIds(communityId); + if (CollUtil.isEmpty(communityIds)) { + communityIds = new ArrayList<>(); + communityIds.add(communityId); + } + neighborCircleAdminDTO.setCommunityIds(communityIds); + } Page page = new Page(neighborCircleAdminDTO.getPageNum(), neighborCircleAdminDTO.getPageSize()); IPage<ComActNeighborCircleAdminVO> doPager = this.baseMapper.pageNeighborByAdmin(page, neighborCircleAdminDTO); doPager.getRecords().forEach(data -> { @@ -314,6 +377,12 @@ } } }); + return R.ok(doPager); + } + @Override + public R pageNeighborByBigScreen(ComActNeighborCircleAdminDTO neighborCircleAdminDTO) { + Page page = new Page(neighborCircleAdminDTO.getPageNum(), neighborCircleAdminDTO.getPageSize()); + IPage<ComActNeighborCircleAdminVO> doPager = this.baseMapper.pageNeighborByBigScreen(page, neighborCircleAdminDTO); return R.ok(doPager); } @@ -453,6 +522,7 @@ ComActNeighborCircleCommentDO circleCommentDO = comActNeighborCircleCommentDAO.selectById(fabulousAppDTO.getServiceId()); if (circleCommentDO != null) { + circleCommentDO.setFabulousNum(circleCommentDO.getFabulousNum() + 1); comActNeighborCircleCommentDAO.updateById(circleCommentDO); //计算需要增加的热度值 @@ -557,6 +627,20 @@ } if (comActNeighborCircleCommentDAO.insert(circleCommentDO) > 0) { + SysUser sysUser=sysUserDao.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId,neighborCircleDO.getSolveId())); + if(sysUser!=null) { + try { + WxXCXTempSend util = new WxXCXTempSend(); + if (neighborCircleDO.getBelongType()==2){ + WxUtil.sendLongTimeTemplate(sysUser.getOpenid(),util.getAccessToken(),"你有一条新的评价信息",neighborCircleDO.getReleaseContent().length()>10?neighborCircleDO.getReleaseContent().substring(0,10)+"..":neighborCircleDO.getReleaseContent(),"packageB/pages/partySecond/problemDetails/index?id="+neighborCircleDO.getId()+"&type=888"); + } + if (neighborCircleDO.getBelongType()==3){ + WxUtil.sendLongTimeTemplate(sysUser.getOpenid(),util.getAccessToken(),"你有一条新的评价信息",neighborCircleDO.getReleaseContent().length()>10?neighborCircleDO.getReleaseContent().substring(0,10)+"..":neighborCircleDO.getReleaseContent(),"packageB/pages/partySecond/problemDetails/index?id="+neighborCircleDO.getId()+"&type=777"); + } + } catch (Exception e) { + e.printStackTrace(); + } + } return R.ok(); } else { return R.fail("评论失败"); @@ -669,7 +753,7 @@ return R.fail(); } if (comActNeighborCircleDO.getStatus() == 1) { - return R.fail("待审核的邻里圈不能删除"); + return R.fail("待审核的数据不能删除"); } // 邻里圈删除 this.baseMapper.deleteById(id); @@ -691,22 +775,39 @@ @Override public R detailNeighborByAdmin(Long id) { - ComActNeighborCircleDetailAppVO comActNeighborCircleDO = - this.baseMapper.neighborDetailByApp(id); + ComActNeighborCircleDetailAppVO comActNeighborCircleDO = baseMapper.neighborDetailByApp(id); if (comActNeighborCircleDO == null) { return R.fail("id有误"); } AdministratorsUserVO user = this.baseMapper.selectUserByUserId(comActNeighborCircleDO.getReleaseId()); DetailNeighborCircleAdminVO vo = new DetailNeighborCircleAdminVO(); BeanUtils.copyProperties(comActNeighborCircleDO, vo); - vo.setReleaseName(user.getName()); - vo.setImageUrl(user.getImageUrl()); + if(user!=null){ + vo.setReleaseName(user.getName()); + vo.setImageUrl(user.getImageUrl()); + } + if(comActNeighborCircleDO.getOrderType()!=null){ + if(comActNeighborCircleDO.getOrderType()==2){ + AdministratorsUserVO user1 = this.baseMapper.selectUserByUserId(comActNeighborCircleDO.getSolveId()); + vo.setSolveName(user1.getName()); + } + if(comActNeighborCircleDO.getOrderType()==1){ + ComPbCheckUnit comPbCheckUnit=comPbCheckUnitDao.selectById(comActNeighborCircleDO.getSolveUnitId()); + if(comPbCheckUnit!=null){ + vo.setSolveName(comPbCheckUnit.getName()); + } + } + } // 查询话题名称 if (comActNeighborCircleDO.getTopicId() != null) { ComActNeighborCircleTopicDO circleTopicDO = comActNeighborCircleTopicMapper.selectById(comActNeighborCircleDO.getTopicId()); - vo.setTopicName(circleTopicDO.getName()); + if(circleTopicDO!=null && !StringUtils.isEmpty(circleTopicDO.getName())) + { + vo.setTopicName(circleTopicDO.getName()); + } + } return R.ok(vo); } @@ -966,12 +1067,856 @@ public R orderAndSolve(EditNeighborCircleAdminVO editNeighborCircleAdminVO) { ComActNeighborCircleDO comActNeighborCircleDO=new ComActNeighborCircleDO(); BeanUtils.copyProperties(editNeighborCircleAdminVO,comActNeighborCircleDO); - if(comActNeighborCircleDO.getSolveStatus()!=null){ + if(comActNeighborCircleDO.getSolveStatus()!=null && comActNeighborCircleDO.getSolveStatus() == 3){ comActNeighborCircleDO.setSolveTime(new Date()); } if(comActNeighborCircleDO.getOrderStatus()!=null){ comActNeighborCircleDO.setOrderTime(new Date()); } - return R.ok(this.baseMapper.updateById(comActNeighborCircleDO)); + if(StringUtils.isNotEmpty(comActNeighborCircleDO.getComment())){ + comActNeighborCircleDO.setCommentTime(new Date()); + } + int result=this.baseMapper.updateById(comActNeighborCircleDO); + if(result>0){ + ComActNeighborCircleDO comActNeighborCircleDO1=this.baseMapper.selectById(comActNeighborCircleDO.getId()); + if(comActNeighborCircleDO.getOrderStatus()!=null){ + SysUser sysUser=sysUserDao.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId,comActNeighborCircleDO1.getReleaseId())); + if(sysUser!=null) { + try { + WxXCXTempSend util = new WxXCXTempSend(); + if (comActNeighborCircleDO1.getBelongType()==2){ + WxUtil.sendLongTimeTemplate(sysUser.getOpenid(),util.getAccessToken(),"你反馈的问题已被人认领",comActNeighborCircleDO1.getReleaseContent().length()>10?comActNeighborCircleDO1.getReleaseContent().substring(0,10)+"..":comActNeighborCircleDO1.getReleaseContent(),"packageB/pages/partySecond/problemDetails/index?id="+comActNeighborCircleDO.getId()+"&type=888"); + } + if (comActNeighborCircleDO1.getBelongType()==3){ + WxUtil.sendLongTimeTemplate(sysUser.getOpenid(),util.getAccessToken(),"你反馈的需求已被人认领",comActNeighborCircleDO1.getReleaseContent().length()>10?comActNeighborCircleDO1.getReleaseContent().substring(0,10)+"..":comActNeighborCircleDO1.getReleaseContent(),"packageB/pages/partySecond/problemDetails/index?id="+comActNeighborCircleDO.getId()+"&type=777"); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } + if(comActNeighborCircleDO.getSolveStatus()==3){ + SysUser sysUser=sysUserDao.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId,comActNeighborCircleDO1.getReleaseId())); + if(sysUser!=null) { + try { + WxXCXTempSend util = new WxXCXTempSend(); + if (comActNeighborCircleDO1.getBelongType()==2){ + WxUtil.sendLongTimeTemplate(sysUser.getOpenid(),util.getAccessToken(),"你反馈的问题已被人处理",comActNeighborCircleDO1.getReleaseContent().length()>10?comActNeighborCircleDO1.getReleaseContent().substring(0,10)+"..":comActNeighborCircleDO1.getReleaseContent(),"packageB/pages/partySecond/problemDetails/index?id="+comActNeighborCircleDO.getId()+"&type=888"); + } + if (comActNeighborCircleDO1.getBelongType()==3){ + WxUtil.sendLongTimeTemplate(sysUser.getOpenid(),util.getAccessToken(),"你反馈的需求已被人处理",comActNeighborCircleDO1.getReleaseContent().length()>10?comActNeighborCircleDO1.getReleaseContent().substring(0,10)+"..":comActNeighborCircleDO1.getReleaseContent(),"packageB/pages/partySecond/problemDetails/index?id="+comActNeighborCircleDO.getId()+"&type=777"); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } + if(comActNeighborCircleDO.getSolveStatus()==4){ + SysUser sysUser=sysUserDao.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId,comActNeighborCircleDO1.getSolveId())); + if(sysUser!=null) { + try { + WxXCXTempSend util = new WxXCXTempSend(); + if (comActNeighborCircleDO1.getBelongType()==2){ + WxUtil.sendLongTimeTemplate(sysUser.getOpenid(),util.getAccessToken(),"你有一条新的评价信息",comActNeighborCircleDO1.getReleaseContent().length()>10?comActNeighborCircleDO1.getReleaseContent().substring(0,10)+"..":comActNeighborCircleDO1.getReleaseContent(),"packageB/pages/partySecond/problemDetails/index?id="+comActNeighborCircleDO.getId()+"&type=888"); + } + if (comActNeighborCircleDO1.getBelongType()==3){ + WxUtil.sendLongTimeTemplate(sysUser.getOpenid(),util.getAccessToken(),"你有一条新的评价信息",comActNeighborCircleDO1.getReleaseContent().length()>10?comActNeighborCircleDO1.getReleaseContent().substring(0,10)+"..":comActNeighborCircleDO1.getReleaseContent(),"packageB/pages/partySecond/problemDetails/index?id="+comActNeighborCircleDO.getId()+"&type=777"); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } + return R.ok(result); + } + return R.fail(); } + + @Override + public R serviceStatic(ServiceStaticDTO serviceStaticDTO) { + ServiceStaticsVO serviceStaticsVO = new ServiceStaticsVO(); + if (serviceStaticDTO.getCheckUnitId() != null && serviceStaticDTO.getCheckUnitId()> 0) + { + //单位服务统计 + serviceStaticsVO = + this.baseMapper.selectStatsCheckUnit(serviceStaticDTO.getCheckUnitId(), serviceStaticDTO.getYear()); + + List<ServiceDetailStaticsVO> serviceDetailStaticsVOList=this.baseMapper.selectServiceDetailList(serviceStaticDTO.getCheckUnitId(), + serviceStaticDTO.getYear(), serviceStaticDTO.getServiceType()); + + + if(serviceStaticDTO.getServiceType()==null || serviceStaticDTO.getServiceType()==1) + { + List<NewFightNeedProblemClaim> list=baseMapper.getNewServiceNum("",serviceStaticDTO.getCheckUnitId()+""); + if(list.size()>0) + { + //设置次数 + int timeNum=serviceStaticsVO.getTimes()+list.size(); + serviceStaticsVO.setTimes(timeNum); + //设置服务时间 + double hours=serviceStaticsVO.getHours(); + + for (NewFightNeedProblemClaim item:list) + { + ServiceDetailStaticsVO newItem=new ServiceDetailStaticsVO(); + + String Ltime=item.getServiceTime(); + if(!StringUtils.isEmpty(Ltime)) + { + double time=(Double.valueOf(Ltime)/3600000); + DecimalFormat df = new DecimalFormat("#.##"); + String formattedNumber = df.format(time); + double result = Double.parseDouble(formattedNumber); + + hours=hours+result; + + newItem.setServiceTime(result); + item.setServiceTime(result+""); + } + newItem.setIsNew("2"); + newItem.setServiceId(Long.valueOf(item.getTaskId())); + newItem.setServiceType(1); + newItem.setServiceAt(item.getCreationTime()); + serviceDetailStaticsVOList.add(newItem); + } + DecimalFormat df = new DecimalFormat("#.##"); + String formattedNumber = df.format(hours); + double result = Double.parseDouble(formattedNumber); + serviceStaticsVO.setHours(result); + } + } + serviceStaticsVO.setServiceDetailStaticsList(serviceDetailStaticsVOList); + } + else + { + //个人服务统计 + + + ComPbMemberDO comPbMemberDO = comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda() + .eq(ComPbMemberDO::getPhone, serviceStaticDTO.getPhone()).last("limit 1")); + Long checkUnitId = null; + if (comPbMemberDO != null) { + checkUnitId = comPbMemberDO.getCheckUnitId(); + } + + serviceStaticsVO = this.baseMapper.selectStatsUser(serviceStaticDTO.getPhone(),checkUnitId+"", serviceStaticDTO.getYear()); + + List<ServiceDetailStaticsVO> serviceDetailStaticsVOList=this.baseMapper.selectServiceDetailListForPersonal(checkUnitId, serviceStaticDTO.getPhone(), + serviceStaticDTO.getYear(), serviceStaticDTO.getServiceType()); + + if(serviceStaticDTO.getServiceType()==null || serviceStaticDTO.getServiceType()==1) + { + //获取新需求服务列表 + List<NewFightNeedProblemClaim> list=baseMapper.getNewServiceNum(serviceStaticDTO.getPhone(),""); + + if(list.size()>0) + { + //设置次数 + int timeNum=serviceStaticsVO.getTimes()+list.size(); + //设置服务时间 + double hours=serviceStaticsVO.getHours(); + serviceStaticsVO.setTimes(timeNum); + for (NewFightNeedProblemClaim item:list) + { + ServiceDetailStaticsVO newItem=new ServiceDetailStaticsVO(); + + String Ltime=item.getServiceTime(); + if(!StringUtils.isEmpty(Ltime)) + { + double time=(Double.valueOf(Ltime)/3600000); + DecimalFormat df = new DecimalFormat("#.##"); + String formattedNumber = df.format(time); + double result = Double.parseDouble(formattedNumber); + + hours=hours+result; + + newItem.setServiceTime(result); + item.setServiceTime(result+""); + } + newItem.setIsNew("2"); + newItem.setServiceId(Long.valueOf(item.getTaskId())); + newItem.setServiceType(1); + newItem.setServiceAt(item.getCreationTime()); + serviceDetailStaticsVOList.add(newItem); + } + + DecimalFormat df = new DecimalFormat("#.##"); + String formattedNumber = df.format(hours); + double result = Double.parseDouble(formattedNumber); + serviceStaticsVO.setHours(result); + } + } + + serviceStaticsVO.setServiceDetailStaticsList(serviceDetailStaticsVOList); + } + return R.ok(serviceStaticsVO); + } + + @Override + 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; + 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, belongTo,communityId,unitId); + //获取单位活动统计数据(活动) + List<UnitActivityAnalysisVO> unitActivityAnalysisVOS1 = comActNeighborCircleDAO.institutionalUnitActivityAnalysis(beginTime, endTime, belongTo,communityId,unitId); + //获取新双挣双评清单任务 + List<UnitActivityAnalysisVO> newTaskList=comActNeighborCircleDAO.getNewTaskList(beginTime, endTime, belongTo,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 (newTaskList.size()>0){ + for (UnitActivityAnalysisVO item : newTaskList){ + if (ObjectUtils.isNotEmpty(item)){ + if (ObjectUtils.isNotEmpty(item.getUnitId())){ + //设置单位名称 + item.setUnitName(comActDAO.selectUnitName(item.getUnitId())); + //统计活动表中的活动信息 + } + if (ObjectUtils.isNotEmpty(item.getCommunityId())){ + item.setCommunityName(comActDAO.selectById(item.getCommunityId()).getName()); + } + + Double time=(item.getServiceTime()/3600000); + DecimalFormat df = new DecimalFormat("#.##"); + String formattedNumber = df.format(time); + Double result = Double.parseDouble(formattedNumber); + item.setServiceTime(result); + } + } + } + + //活动表数据处理 + 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){ + //已有数据,将时长,次数相加 + Double 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())) + { + ComActDO actDO=comActDAO.selectById(vo.getCommunityId()); + if(actDO!=null && !StringUtils.isEmpty(actDO.getName())) + { + vo.setCommunityName(actDO.getName()); + } + } + unitActivityAnalysisVOS.add(vo); + } + } + } + } + } + + if (newTaskList.size()>0){ + for (UnitActivityAnalysisVO item : newTaskList){ + if (ObjectUtils.isNotEmpty(item)){ + + if (ObjectUtils.isNotEmpty(item.getUnitId())){ + //判断邻里圈统计中是否已有该单位数据 + Map<String, Integer> param = alreadyAnalysis(item.getUnitId(), unitActivityAnalysisVOS); + if (param.get("flag")==1){ + //已有数据,将时长,次数相加 + Double serviceTime = unitActivityAnalysisVOS.get(param.get("index")).getServiceTime()+item.getServiceTime(); + Integer serviceTimes = item.getServiceTimes(); + + DecimalFormat df2 = new DecimalFormat("#.##"); + String formattedNumber2 = df2.format(serviceTime); + Double result2 = Double.parseDouble(formattedNumber2); + + unitActivityAnalysisVOS.get(param.get("index")).setServiceTime(result2); + unitActivityAnalysisVOS.get(param.get("index")).setServiceTimes(unitActivityAnalysisVOS.get(param.get("index")).getServiceTimes()+serviceTimes); + }else { + //新数据,获取单位,社区名 + item.setUnitName(comActDAO.selectUnitName(item.getUnitId())); + if (ObjectUtils.isNotEmpty(item.getCommunityId())) + { + ComActDO actDO=comActDAO.selectById(item.getCommunityId()); + if(actDO!=null && !StringUtils.isEmpty(actDO.getName())) + { + item.setCommunityName(actDO.getName()); + } + } + + unitActivityAnalysisVOS.add(item); + } + } + + } + } + } + + + + //获取党员活动统计数据 + List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo,communityId,unitId,searchContent); + List<PartyMemberAnalysisVO> partyMemberAnalysisVOS1 = comActNeighborCircleDAO.institutionalPartyMemberActAnalysis(beginTime, endTime, belongTo,communityId,unitId,searchContent); + //获取新双挣双评清单任务 + List<PartyMemberAnalysisVO> newPartyMemberList = comActNeighborCircleDAO.getNewPartyMemberTaskList(beginTime, endTime, belongTo,communityId,unitId,searchContent); + if (partyMemberAnalysisVOS1.size()>0){ + for (PartyMemberAnalysisVO vo : partyMemberAnalysisVOS1) { + if (ObjectUtils.isNotEmpty(vo)){ + if (ObjectUtils.isNotEmpty(vo.getMemberId())){ + Map<String, Integer> param = memberAlreadyAnalysis(vo.getMemberId(), partyMemberAnalysisVOS); + if (param.get("flag")==1){ + Double serviceTime = vo.getServiceTime(); + Integer serviceTimes = vo.getServiceTimes(); + partyMemberAnalysisVOS.get(param.get("index")).setServiceTime(partyMemberAnalysisVOS.get(param.get("index")).getServiceTime()+serviceTime); + partyMemberAnalysisVOS.get(param.get("index")).setServiceTimes(partyMemberAnalysisVOS.get(param.get("index")).getServiceTimes()+serviceTimes); + }else{ + partyMemberAnalysisVOS.add(vo); + } + } + } + } + } + + if (newPartyMemberList.size()>0){ + for (PartyMemberAnalysisVO item : newPartyMemberList) + { + Double time=(item.getServiceTime()/3600000); + DecimalFormat df = new DecimalFormat("#.##"); + String formattedNumber = df.format(time); + Double result = Double.parseDouble(formattedNumber); + item.setServiceTime(result); + if (ObjectUtils.isNotEmpty(item)){ + if (ObjectUtils.isNotEmpty(item.getMemberId())){ + Map<String, Integer> param = memberAlreadyAnalysis(item.getMemberId(), partyMemberAnalysisVOS); + if (param.get("flag")==1){ + Double serviceTime = partyMemberAnalysisVOS.get(param.get("index")).getServiceTime()+item.getServiceTime(); + Integer serviceTimes = item.getServiceTimes(); + + DecimalFormat df1 = new DecimalFormat("#.##"); + String formattedNumber1 = df1.format(serviceTime); + Double result1 = Double.parseDouble(formattedNumber1); + + partyMemberAnalysisVOS.get(param.get("index")).setServiceTime(result1); + partyMemberAnalysisVOS.get(param.get("index")).setServiceTimes(partyMemberAnalysisVOS.get(param.get("index")).getServiceTimes()+serviceTimes); + }else{ + + + partyMemberAnalysisVOS.add(item); + } + } + } + } + } + + + //报道单位统计积分 + List<NewFightNeedProblemInventory> allList = newFightNeedProblemInventoryMapper.selectAll(); + Map<Long, String> awardMap = allList.stream().filter(Objects::nonNull).collect(Collectors.toMap(NewFightNeedProblemInventory::getId, NewFightNeedProblemInventory::getAward)); + for (UnitActivityAnalysisVO unitVO : unitActivityAnalysisVOS) { + + Long unitId1 = unitVO.getUnitId(); + LambdaQueryWrapper<NewFightNeedProblemClaim> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(NewFightNeedProblemClaim::getUnitId,String.valueOf(unitId1)); + List<NewFightNeedProblemClaim> inventories = newFightNeedProblemClaimMapper.selectList(wrapper); + Map<String, Long> collectMap = inventories.stream() + .collect(Collectors.groupingBy(NewFightNeedProblemClaim::getTaskId, Collectors.counting())); + long sum = 0l; + if(unitVO.getAwardSum()!=null) + { + sum=unitVO.getAwardSum(); + } + //任务id集合 + List<String> taskIds = inventories.stream().map(NewFightNeedProblemClaim::getTaskId).distinct().collect(Collectors.toList()); + for (String taskId : taskIds) { +// NewFightNeedProblemInventory newFightNeedProblemInventory = newFightNeedProblemInventoryMapper.selectById(taskId); +// String award = newFightNeedProblemInventory.getAward(); + String award = awardMap.get(Long.parseLong(taskId)); + Long count = collectMap.get(taskId); + if(!StringUtils.isEmpty(award) ) + { + long i = Long.parseLong(award) * count; + sum = sum + i; + } + } + unitVO.setAwardSum(sum); + } + + //报道党员统计积分 + for (PartyMemberAnalysisVO memberAnalysisVO : partyMemberAnalysisVOS) + { + if(memberAnalysisVO!=null) + { + Long userId = memberAnalysisVO.getMemberId(); + LambdaQueryWrapper<NewFightNeedProblemClaim> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(NewFightNeedProblemClaim::getUserId,userId); + List<NewFightNeedProblemClaim> newFightNeedProblemInventories = newFightNeedProblemClaimMapper.selectList(wrapper); + long sumAward = 0l; + + if(memberAnalysisVO.getPartyCount()!=null) + { + sumAward=memberAnalysisVO.getPartyCount(); + } + + for (NewFightNeedProblemClaim inventory : newFightNeedProblemInventories) { + String taskId = inventory.getTaskId(); + NewFightNeedProblemInventory newFightNeedProblemInventory = newFightNeedProblemInventoryMapper.selectById(taskId); + + if(newFightNeedProblemInventory!=null && !StringUtils.isEmpty(newFightNeedProblemInventory.getAward())) + { + String award = newFightNeedProblemInventory.getAward(); + + if(!StringUtils.isEmpty(award) ) + { + sumAward = Long.parseLong(award) + sumAward; + } + } + + } + memberAnalysisVO.setPartyCount(sumAward); + } + } + + //统计总时长和总次数 + Integer unitServiceCount=0; + Double unitServiceTotalTime=0.0; + Integer memberServiceCount=0; + Double memberServiceTotalTome=0.0; + long awardSumCount=0L; + long partySumCount=0L; + for (UnitActivityAnalysisVO vo : unitActivityAnalysisVOS) { + //避免空指针 + if (ObjectUtils.isNotEmpty(vo)){ + if (ObjectUtils.isNotEmpty(vo.getServiceTime())){ + unitServiceTotalTime+=vo.getServiceTime(); + } + if (ObjectUtils.isNotEmpty(vo.getServiceTimes())){ + unitServiceCount+=vo.getServiceTimes(); + } + } + } + for (PartyMemberAnalysisVO vo : partyMemberAnalysisVOS) { + //避免空指针 + if (ObjectUtils.isNotEmpty(vo)){ + if (ObjectUtils.isNotEmpty(vo.getServiceTime())){ + memberServiceTotalTome+=vo.getServiceTime(); + } + if (ObjectUtils.isNotEmpty(vo.getServiceTimes())){ + memberServiceCount+=vo.getServiceTimes(); + } + } + } + for (UnitActivityAnalysisVO vo : unitActivityAnalysisVOS) { + if(ObjectUtils.isNotEmpty(vo)){ + if(ObjectUtils.isNotEmpty(vo.getAwardSum())){ + awardSumCount += vo.getAwardSum(); + } + } + } + for (PartyMemberAnalysisVO memberAnalysisVO : partyMemberAnalysisVOS) { + if(ObjectUtils.isNotEmpty(memberAnalysisVO)){ + if(ObjectUtils.isNotEmpty(memberAnalysisVO.getPartyCount())){ + partySumCount += memberAnalysisVO.getPartyCount(); + } + } + } + activityVO.setAwardSumCount(awardSumCount); + activityVO.setPartySumCount(partySumCount); + activityVO.setUnitServiceTotalCount(unitServiceCount); + activityVO.setUnitServiceTotalTime(unitServiceTotalTime); + activityVO.setPartyMemberServiceTotalCount(memberServiceCount); + activityVO.setPartyMemberServiceTotalTime(memberServiceTotalTome); + //处理排序 + if (null != type){ + if (type.equals(1)){ + //按时长排序 + 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,""); + } + } + else + { + //按时长排序 + ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTime"); + ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTime"); + + ListUtil.reverse(unitActivityAnalysisVOS); + ListUtil.reverse(partyMemberAnalysisVOS); + } + //处理分页 + PageVO<List<UnitActivityAnalysisVO>> unitPage=new PageVO<>(); + PageVO<List<PartyMemberAnalysisVO>> memberPage=new PageVO<>(); + if (ObjectUtils.isNotEmpty(page) && ObjectUtils.isNotEmpty(size)){ + //分页处理 + unitPage.setRecordsCount(unitActivityAnalysisVOS.size()); + unitPage.setPage(page); + unitPage.setPages(getPages(unitPage.getRecordsCount(),size )); + memberPage.setPage(page); + memberPage.setRecordsCount(partyMemberAnalysisVOS.size()); + memberPage.setPages(getPages(memberPage.getRecordsCount(), size)); + //处理分页的结果 + unitPage.setRecords(subUnitList((ArrayList) unitActivityAnalysisVOS, page,size)); + memberPage.setRecords(subUnitList((ArrayList)partyMemberAnalysisVOS,page ,size)); + + }else { + unitPage.setRecords(unitActivityAnalysisVOS); + memberPage.setRecords(partyMemberAnalysisVOS); + } + activityVO.setUnitList(unitPage); + activityVO.setPartyMemberList(memberPage); + + //党员数据 聚合 + Map<String, Double> map = new HashMap<>(); + partyMemberAnalysisVOS.forEach(vo->{ + String name = vo.getBelongTo(); + Double time = 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); + + } + + @Override + public List<ExcelDO> export(Integer year, String belongTo, Long communityId) throws Exception { + List<ExcelDO> excelDOList = new ArrayList<>(); + String beginTime=null; + String endTime=null; + if (null != year){ + //设置开始,截止时间 + beginTime=year.toString().concat("-01-01"); + endTime=year.toString().concat("-12-31"); + } + //获取单位活动统计数据(邻里圈) + List<UnitActivityAnalysisVO> unitActivityAnalysisVOS = comActNeighborCircleDAO.institutionalUnitServiceAnalysis(beginTime, endTime, belongTo,communityId,null); + //获取单位活动统计数据(活动) + List<UnitActivityAnalysisVO> unitActivityAnalysisVOS1 = comActNeighborCircleDAO.institutionalUnitActivityAnalysis(beginTime, endTime, belongTo,communityId,null); + if (!unitActivityAnalysisVOS.isEmpty()){ + 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.isEmpty()){ + 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){ + //已有数据,将时长,次数相加 + Double 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())) + { + ComActDO actDO=comActDAO.selectById(vo.getCommunityId()); + if(actDO!=null && !StringUtils.isEmpty(actDO.getName())) + { + vo.setCommunityName(actDO.getName()); + } + } + unitActivityAnalysisVOS.add(vo); + } + } + } + } + } + List<NewFightNeedProblemInventory> allList = newFightNeedProblemInventoryMapper.selectAll(); + Map<Long, String> awardMap = allList.stream().filter(Objects::nonNull).collect(Collectors.toMap(NewFightNeedProblemInventory::getId, NewFightNeedProblemInventory::getAward)); + for (UnitActivityAnalysisVO unitVO : unitActivityAnalysisVOS) { + + Long unitId1 = unitVO.getUnitId(); + LambdaQueryWrapper<NewFightNeedProblemClaim> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(NewFightNeedProblemClaim::getUnitId,String.valueOf(unitId1)); + List<NewFightNeedProblemClaim> inventories = newFightNeedProblemClaimMapper.selectList(wrapper); + Map<String, Long> collectMap = inventories.stream() + .collect(Collectors.groupingBy(NewFightNeedProblemClaim::getTaskId, Collectors.counting())); + long sum = 0L; + //任务id集合 + List<String> taskIds = inventories.stream().map(NewFightNeedProblemClaim::getTaskId).distinct().collect(Collectors.toList()); + for (String taskId : taskIds) { +// NewFightNeedProblemInventory newFightNeedProblemInventory = newFightNeedProblemInventoryMapper.selectById(taskId); +// String award = newFightNeedProblemInventory.getAward(); + String award = awardMap.get(Long.parseLong(taskId)); + Long count = collectMap.get(taskId); + long i = Long.parseLong(award) * count; + sum = sum + i; + } + unitVO.setAwardSum(sum); + } + for (UnitActivityAnalysisVO vo : unitActivityAnalysisVOS) { + ExcelDO excelDO = new ExcelDO(); + excelDO.setBelongTo(vo.getBelongTo()); + excelDO.setOrgName(vo.getOrgName()); + excelDO.setUnitName(vo.getUnitName()); + excelDO.setCommunityName(vo.getCommunityName()); + excelDO.setServiceTime(vo.getServiceTime()); + excelDO.setAwardSum(vo.getAwardSum()); + excelDOList.add(excelDO); + } + return excelDOList; + } + + @Override + public List<PartyExcelDO> partyExcel(Integer year, String belongTo, Long communityId,Long unitId) { + String beginTime=null; + String endTime=null; + if (null != year){ + //设置开始,截止时间 + beginTime=year.toString().concat("-01-01"); + endTime=year.toString().concat("-12-31"); + } + //获取党员活动统计数据 + 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)){ + if (ObjectUtils.isNotEmpty(vo.getMemberId())){ + Map<String, Integer> param = memberAlreadyAnalysis(vo.getMemberId(), partyMemberAnalysisVOS); + if (param.get("flag")==1){ + Double serviceTime = vo.getServiceTime(); + Integer serviceTimes = vo.getServiceTimes(); + partyMemberAnalysisVOS.get(param.get("index")).setServiceTime(partyMemberAnalysisVOS.get(param.get("index")).getServiceTime()+serviceTime); + partyMemberAnalysisVOS.get(param.get("index")).setServiceTimes(partyMemberAnalysisVOS.get(param.get("index")).getServiceTimes()+serviceTimes); + }else{ + partyMemberAnalysisVOS.add(vo); + } + } + } + } + } + + //报道党员统计积分 + for (PartyMemberAnalysisVO memberAnalysisVO : partyMemberAnalysisVOS) { + Long userId = memberAnalysisVO.getMemberId(); + LambdaQueryWrapper<NewFightNeedProblemClaim> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(NewFightNeedProblemClaim::getUserId,userId); + List<NewFightNeedProblemClaim> newFightNeedProblemInventories = newFightNeedProblemClaimMapper.selectList(wrapper); + long sumAward = 0L; + for (NewFightNeedProblemClaim inventory : newFightNeedProblemInventories) { + String taskId = inventory.getTaskId(); + NewFightNeedProblemInventory newFightNeedProblemInventory = newFightNeedProblemInventoryMapper.selectById(taskId); + String award = newFightNeedProblemInventory.getAward(); + sumAward = Long.parseLong(award) + sumAward; + } + memberAnalysisVO.setPartyCount(sumAward); + } + List<PartyExcelDO> list = new ArrayList<>(); + for (PartyMemberAnalysisVO memberAnalysisVO : partyMemberAnalysisVOS) { + PartyExcelDO partyExcelDO = new PartyExcelDO(); + partyExcelDO.setBelongTo(memberAnalysisVO.getBelongTo()); + partyExcelDO.setOrgName(memberAnalysisVO.getOrgName()); + partyExcelDO.setUnitName(memberAnalysisVO.getUnitName()); + partyExcelDO.setMemberName(memberAnalysisVO.getMemberName()); + partyExcelDO.setBelongCommunity(memberAnalysisVO.getBelongCommunity()); + partyExcelDO.setServiceTimes(memberAnalysisVO.getServiceTimes()); + partyExcelDO.setServiceTime(memberAnalysisVO.getServiceTime()); + partyExcelDO.setPartyCount(memberAnalysisVO.getPartyCount()); + list.add(partyExcelDO); + } + return list; + } + + + @Override + public R serviceStaticBackstage(ServiceStaticBackstageDTO serviceStaticDTO) { + return null; + } + + @Override + public R selectCount(Integer type, String phone,Long communityId) { + return R.ok(this.baseMapper.selectCount(type,phone,communityId)); + } + + /** + * 分页查询可关联清单列表 + * @param neighborCircleAppDTO + * @return + */ + @Override + public R pageRelationList(ComActNeighborCircleAppDTO neighborCircleAppDTO) { + Page userPage = new Page(neighborCircleAppDTO.getPageNum(), neighborCircleAppDTO.getPageSize()); + IPage<ComActNeighborCircleAppVO> doPager = this.baseMapper.pageRelationList(userPage, neighborCircleAppDTO); + if (!doPager.getRecords().isEmpty()) { + for (ComActNeighborCircleAppVO circleAppVO : doPager.getRecords()) { + if (neighborCircleAppDTO.getUserId() != null) { + // 查询点赞信息 + ComActNeighborCircleFabulousDO circleFabulousDO = + comActNeighborCircleFabulousDAO.selectOne(new QueryWrapper<ComActNeighborCircleFabulousDO>() + .lambda().eq(ComActNeighborCircleFabulousDO::getParentId, circleAppVO.getId()) + .eq(ComActNeighborCircleFabulousDO::getUserId, neighborCircleAppDTO.getUserId()) + .eq(ComActNeighborCircleFabulousDO::getType, ComActNeighborCircleFabulousDO.type.llq) + .eq(ComActNeighborCircleFabulousDO::getIsEffective, + ComActNeighborCircleFabulousDO.isEffective.yes)); + if (circleFabulousDO != null) { + circleAppVO.setHaveSign(1); + } else { + circleAppVO.setHaveSign(2); + } + } + if (circleAppVO.getType() != null && circleAppVO.getType().equals(ComActNeighborCircleDO.type.admin)) { + ComActDO actDO = comActDAO.selectById(circleAppVO.getCommunityId()); + if (actDO != null) { + circleAppVO.setName(actDO.getName()); + } + } + } + } + return R.ok(doPager); + } + + /** + * 判断活动统计列表中是否已有该单位的数据 + * */ + 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; + } + + /** + * 计算总页数 + * */ + public Integer getPages(Integer record,Integer size){ + if (null != record && null != size){ + int pages = PageUtil.totalPage(record, size); + return pages; + } + return 0; + } + + /** + * 分页截取 + * */ + public List<Object> subUnitList(List<Object> list, int page, int size){ + try { + //计算endIndex是否超出List大小 + final Boolean flag=((page-1)*size+size) > list.size(); + if (1 == page || 0 == page){ + //第一页 + return list.subList(0,size); + }else if (flag){ + return ListUtil.sub(list, (page-1)*size-1, list.size()-1); + } + else { + return list.subList((page-1)*size, (page-1)*size+size); + } + }catch (Exception e){ + //返回原集合 + return list; + } + } + + /** + * 判断党员的统计是是否已存在 + * */ + public Map<String,Integer> memberAlreadyAnalysis(Long memberId,List<PartyMemberAnalysisVO> list){ + Map<String,Integer> map=new HashMap<>(); + if (memberId != null && list.size() > 0){ + for (int i=0;i<list.size();i++) { + PartyMemberAnalysisVO vo = list.get(i); + if (ObjectUtils.isNotEmpty(vo)){ + if (ObjectUtils.isNotEmpty(vo.getMemberId())){ + if (memberId.equals(vo.getMemberId())){ + map.put("index",i ); + map.put("flag",1 ); + return map; + } + } + } + } + } + map.put("flag",0 ); + return map; + } + + + + + + + + } -- Gitblit v1.7.1