| | |
| | | package com.panzhihua.service_community.service.impl; |
| | | |
| | | import cn.hutool.core.date.DateTime; |
| | | import cn.hutool.core.date.DateUtil; |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.util.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.panzhihua.common.model.dtos.partybuilding.ComPbActivityDTO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.screen.*; |
| | | import com.panzhihua.common.utlis.DateUtils; |
| | |
| | | import com.panzhihua.service_community.model.dos.ComActDO; |
| | | import com.panzhihua.service_community.model.dos.ComActDynDO; |
| | | import com.panzhihua.service_community.service.ScreenWorkService; |
| | | import org.apache.commons.net.ntp.TimeStamp; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | import java.util.stream.Stream; |
| | | import cn.hutool.core.date.DateTime; |
| | | import cn.hutool.core.date.DateUtil; |
| | | |
| | | /** |
| | | * @author xyh |
| | |
| | | public class ScreenWorkServiceImpl implements ScreenWorkService { |
| | | |
| | | private static final Integer pageSize = 200; |
| | | |
| | | private final String moth_format_str = "yyyy-MM"; |
| | | private final String[] monthStr = new String[] {"一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二"}; |
| | | @Resource |
| | | private ComActDAO comActDAO; |
| | | @Resource |
| | |
| | | @Resource |
| | | private ComActEasyPhotoDAO comActEasyPhotoDAO; |
| | | |
| | | private final String moth_format_str = "yyyy-MM"; |
| | | |
| | | private final String[] monthStr = new String[]{"一","二","三","四","五","六","七","八","九","十","十一","十二"}; |
| | | |
| | | @Override |
| | | public R statisticNeighborCircle(Long communityId) { |
| | | |
| | | ComActNeighborCircleScreenVO comActNeighborCircleScreenVO = new ComActNeighborCircleScreenVO(); |
| | | String date = DateUtils.getDateFormatString(new Date(),moth_format_str); |
| | | Map<String,Long> countMap = comActNeighborCircleDAO.countByCommunityId(communityId,date); |
| | | String date = DateUtils.getDateFormatString(new Date(), moth_format_str); |
| | | Map<String, Long> countMap = comActNeighborCircleDAO.countByCommunityId(communityId, date); |
| | | comActNeighborCircleScreenVO.setCurrentNum(countMap.get("currentNum")); |
| | | comActNeighborCircleScreenVO.setTotalNum(countMap.get("totalNum")); |
| | | Map<String,Object> sumMap = comActNeighborCircleDAO.sumScreenNum(communityId); |
| | | comActNeighborCircleScreenVO.setFabulousNum(sumMap.get("fabulousNum") == null?0L:Long.valueOf(sumMap.get("fabulousNum").toString())); |
| | | comActNeighborCircleScreenVO.setCommentNum(sumMap.get("commentNum") == null?0L:Long.valueOf(sumMap.get("commentNum").toString())); |
| | | comActNeighborCircleScreenVO.setSharedNum(sumMap.get("forwardNum") == null?0L:Long.valueOf(sumMap.get("forwardNum").toString())); |
| | | //查询最近发布的邻里圈 |
| | | comActNeighborCircleScreenVO.setList(comActNeighborCircleDAO.screenNeighborCircle(communityId,pageSize)); |
| | | //查询最近发布的邻里圈图片 |
| | | comActNeighborCircleScreenVO.setImgs(convertStringList(comActNeighborCircleDAO.screenNeighborCircleImgs(communityId,pageSize))); |
| | | Map<String, Object> sumMap = comActNeighborCircleDAO.sumScreenNum(communityId); |
| | | comActNeighborCircleScreenVO.setFabulousNum( |
| | | sumMap.get("fabulousNum") == null ? 0L : Long.valueOf(sumMap.get("fabulousNum").toString())); |
| | | comActNeighborCircleScreenVO |
| | | .setCommentNum(sumMap.get("commentNum") == null ? 0L : Long.valueOf(sumMap.get("commentNum").toString())); |
| | | comActNeighborCircleScreenVO |
| | | .setSharedNum(sumMap.get("forwardNum") == null ? 0L : Long.valueOf(sumMap.get("forwardNum").toString())); |
| | | // 查询最近发布的邻里圈 |
| | | comActNeighborCircleScreenVO.setList(comActNeighborCircleDAO.screenNeighborCircle(communityId, pageSize)); |
| | | // 查询最近发布的邻里圈图片 |
| | | comActNeighborCircleScreenVO |
| | | .setImgs(convertStringList(comActNeighborCircleDAO.screenNeighborCircleImgs(communityId, pageSize))); |
| | | return R.ok(comActNeighborCircleScreenVO); |
| | | } |
| | | |
| | | @Override |
| | | public R wish(Long communityId) { |
| | | ComActMicroWishScreenVO wishScreenVO = new ComActMicroWishScreenVO(); |
| | | String date = DateUtils.getDateFormatString(new Date(),moth_format_str); |
| | | //统计本月新增,累计实现,待实现 |
| | | Map<String,Long> countMap = comActMicroWishDAO.countByCommunityId(communityId,date); |
| | | String date = DateUtils.getDateFormatString(new Date(), moth_format_str); |
| | | // 统计本月新增,累计实现,待实现 |
| | | Map<String, Long> countMap = comActMicroWishDAO.countByCommunityId(communityId, date); |
| | | wishScreenVO.setCompletedNum(countMap.get("completedNum") == null ? 0L : countMap.get("completedNum")); |
| | | wishScreenVO.setWillNum(countMap.get("willNum") == null ? 0L : countMap.get("willNum")); |
| | | wishScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum")); |
| | | //微心愿轮播图片 |
| | | wishScreenVO.setImgs(convertStringList(comActMicroWishDAO.getAllImgs(communityId,pageSize))); |
| | | // 微心愿轮播图片 |
| | | wishScreenVO.setImgs(convertStringList(comActMicroWishDAO.getAllImgs(communityId, pageSize))); |
| | | return R.ok(wishScreenVO); |
| | | } |
| | | |
| | | |
| | | |
| | | private List<String> convertStringList(List<String> imgList) { |
| | | List<String> imgs = new ArrayList<>(); |
| | | for(String img:imgList){ |
| | | if(StringUtils.isEmpty(img)){ |
| | | for (String img : imgList) { |
| | | if (StringUtils.isEmpty(img)) { |
| | | continue; |
| | | } |
| | | String[] arrs = img.split(","); |
| | | if(arrs.length > 1){ |
| | | for(String arr: arrs){ |
| | | if (arrs.length > 1) { |
| | | for (String arr : arrs) { |
| | | imgs.add(arr); |
| | | } |
| | | }else{ |
| | | } else { |
| | | imgs.add(img); |
| | | } |
| | | } |
| | |
| | | ComActActivityScreenVO comActActivityScreenVO = new ComActActivityScreenVO(); |
| | | |
| | | comActActivityScreenVO.setImgs(convertStringList(actActivityDAO.listImg(communityId))); |
| | | //统计本月新增、居民活动,志愿者活动 |
| | | String date = DateUtils.getDateFormatString(new Date(),moth_format_str); |
| | | Map<String,Long> countMap = actActivityDAO.countByCommunityId(communityId,date); |
| | | // 统计本月新增、居民活动,志愿者活动 |
| | | String date = DateUtils.getDateFormatString(new Date(), moth_format_str); |
| | | Map<String, Long> countMap = actActivityDAO.countByCommunityId(communityId, date); |
| | | comActActivityScreenVO.setTotalNum(countMap.get("totalNum") == null ? 0L : countMap.get("totalNum")); |
| | | comActActivityScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum")); |
| | | comActActivityScreenVO.setCommonNum(countMap.get("commonNum") == null ? 0L : countMap.get("commonNum")); |
| | | comActActivityScreenVO.setCommonPeopleNum(countMap.get("commonPeopleNum") == null ? 0L : countMap.get("commonPeopleNum")); |
| | | comActActivityScreenVO.setVolunteerNum(countMap.get("volunteerNum") == null ? 0L : countMap.get("volunteerNum")); |
| | | comActActivityScreenVO.setVolunteerPeopleNum(countMap.get("volunteerPeopleNum") == null ? 0L : countMap.get("volunteerPeopleNum")); |
| | | //最近活动 |
| | | comActActivityScreenVO.setList(actActivityDAO.screenActivity(communityId,pageSize)); |
| | | comActActivityScreenVO |
| | | .setCommonPeopleNum(countMap.get("commonPeopleNum") == null ? 0L : countMap.get("commonPeopleNum")); |
| | | comActActivityScreenVO |
| | | .setVolunteerNum(countMap.get("volunteerNum") == null ? 0L : countMap.get("volunteerNum")); |
| | | comActActivityScreenVO.setVolunteerPeopleNum( |
| | | countMap.get("volunteerPeopleNum") == null ? 0L : countMap.get("volunteerPeopleNum")); |
| | | // 最近活动 |
| | | comActActivityScreenVO.setList(actActivityDAO.screenActivity(communityId, pageSize)); |
| | | return R.ok(comActActivityScreenVO); |
| | | } |
| | | |
| | | @Override |
| | | public R discuss(Long communityId) { |
| | | ComActDiscussScreenVO discussScreenVO = new ComActDiscussScreenVO(); |
| | | //统计本月新增,总共,图文,投票 |
| | | String date = DateUtils.getDateFormatString(new Date(),moth_format_str); |
| | | Map<String,Long> countMap = comActDiscussDAO.countByCommunityId(communityId,date); |
| | | // 统计本月新增,总共,图文,投票 |
| | | String date = DateUtils.getDateFormatString(new Date(), moth_format_str); |
| | | Map<String, Long> countMap = comActDiscussDAO.countByCommunityId(communityId, date); |
| | | discussScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum")); |
| | | discussScreenVO.setTotalNum(countMap.get("totalNum") == null ? 0L : countMap.get("totalNum")); |
| | | discussScreenVO.setImgNum(countMap.get("imgNum") == null ? 0L : countMap.get("imgNum")); |
| | | discussScreenVO.setImgPeopleNum(countMap.get("imgPeopleNum") == null ? 0L : countMap.get("imgPeopleNum")); |
| | | discussScreenVO.setVoteNum(discussScreenVO.getTotalNum() - discussScreenVO.getImgNum()); |
| | | discussScreenVO.setVotePeopleNum(countMap.get("votePeopleNum") == null ? 0L : countMap.get("votePeopleNum")); |
| | | discussScreenVO.setList(comActDiscussDAO.screenDiscuss(communityId,pageSize)); |
| | | discussScreenVO.setList(comActDiscussDAO.screenDiscuss(communityId, pageSize)); |
| | | return R.ok(discussScreenVO); |
| | | } |
| | | |
| | | @Override |
| | | public R pbWork(Long communityId) { |
| | | ComPbWorkScreenVO pbWorkScreenVO = new ComPbWorkScreenVO(); |
| | | String date = DateUtils.getDateFormatString(new Date(),moth_format_str); |
| | | Map<String,Long> countMap = comPbDynDAO.countByCommunityId(communityId,date); |
| | | String date = DateUtils.getDateFormatString(new Date(), moth_format_str); |
| | | Map<String, Long> countMap = comPbDynDAO.countByCommunityId(communityId, date); |
| | | pbWorkScreenVO.setActivityNum(countMap.get("activityNum") == null ? 0L : countMap.get("activityNum")); |
| | | pbWorkScreenVO.setDynNum(countMap.get("dynNum") == null ? 0L : countMap.get("dynNum")); |
| | | pbWorkScreenVO.setTotalNum(pbWorkScreenVO.getActivityNum() + pbWorkScreenVO.getDynNum()); |
| | | pbWorkScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum")); |
| | | //统计近半年数据 |
| | | // 统计近半年数据 |
| | | List<PbWorkVO> list = new ArrayList<>(); |
| | | for(PbWorkVO workVO: listHalfYear()){ |
| | | PbWorkVO result = comPbDynDAO.countByTime(workVO.getStart(),workVO.getEnd(),communityId); |
| | | for (PbWorkVO workVO : listHalfYear()) { |
| | | PbWorkVO result = comPbDynDAO.countByTime(workVO.getStart(), workVO.getEnd(), communityId); |
| | | result.setMonth(workVO.getMonth()); |
| | | list.add(result); |
| | | } |
| | |
| | | return R.ok(pbWorkScreenVO); |
| | | } |
| | | |
| | | |
| | | private List<PbWorkVO> listHalfYear() { |
| | | List<PbWorkVO> dateList = new ArrayList<>(); |
| | | Date now = new Date(); |
| | | for(int i= 6;i>=1;i--){ |
| | | Date date = DateUtils.getDateM(now,-i); |
| | | Date now = new Date(); |
| | | for (int i = 6; i >= 1; i--) { |
| | | Date date = DateUtils.getDateM(now, -i); |
| | | DateTime endDay = DateUtil.endOfMonth(date); |
| | | |
| | | int m = DateUtil.month(endDay); |
| | | if(m == 0){ |
| | | if (m == 0) { |
| | | m = 12; |
| | | } |
| | | m--; |
| | | int day = DateUtil.dayOfMonth(endDay); |
| | | int half = day/2; |
| | | String month = DateUtil.format(date,moth_format_str); |
| | | int half = day / 2; |
| | | String month = DateUtil.format(date, moth_format_str); |
| | | PbWorkVO pbWorkVO = new PbWorkVO(); |
| | | pbWorkVO.setMonth(monthStr[m]+"月上旬"); |
| | | pbWorkVO.setStart(month+ "-01 00:00:00"); |
| | | pbWorkVO.setEnd(month+ "-"+half+" 23:59:58"); |
| | | pbWorkVO.setMonth(monthStr[m] + "月上旬"); |
| | | pbWorkVO.setStart(month + "-01 00:00:00"); |
| | | pbWorkVO.setEnd(month + "-" + half + " 23:59:58"); |
| | | dateList.add(pbWorkVO); |
| | | PbWorkVO pbWorkVO2 = new PbWorkVO(); |
| | | pbWorkVO2.setMonth(monthStr[m]+"月下旬"); |
| | | pbWorkVO2.setStart(month+ "-"+half+" 23:59:58"); |
| | | pbWorkVO2.setEnd(DateUtils.getDateFormatString(endDay,"yyyy-MM-dd HH:mm:ss")); |
| | | pbWorkVO2.setMonth(monthStr[m] + "月下旬"); |
| | | pbWorkVO2.setStart(month + "-" + half + " 23:59:58"); |
| | | pbWorkVO2.setEnd(DateUtils.getDateFormatString(endDay, "yyyy-MM-dd HH:mm:ss")); |
| | | dateList.add(pbWorkVO2); |
| | | } |
| | | return dateList; |
| | |
| | | comActEasyPhotoScreenVO.setDeal(comActEasyPhotoDAO.countDeal(communityId)); |
| | | comActEasyPhotoScreenVO.setPub(comActEasyPhotoDAO.countPub(communityId)); |
| | | comActEasyPhotoScreenVO.setApproved(comActEasyPhotoDAO.countApproved(communityId)); |
| | | String date = DateUtils.getDateFormatString(new Date(),moth_format_str); |
| | | Map<String,Object> countMap = comActEasyPhotoDAO.countByCommunityId(communityId,date); |
| | | comActEasyPhotoScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : Long.valueOf(countMap.get("currentNum").toString())); |
| | | comActEasyPhotoScreenVO.setNoneDeal(countMap.get("noneDeal") == null ? 0L : Long.valueOf(countMap.get("noneDeal").toString())); |
| | | comActEasyPhotoScreenVO.setPubPoint(countMap.get("pubPoint") == null ? 0 : Integer.valueOf(countMap.get("pubPoint").toString())); |
| | | comActEasyPhotoScreenVO.setDealTime(countMap.get("dealTime") == null ? 0 : Double.valueOf(countMap.get("dealTime").toString()).intValue()); |
| | | String date = DateUtils.getDateFormatString(new Date(), moth_format_str); |
| | | Map<String, Object> countMap = comActEasyPhotoDAO.countByCommunityId(communityId, date); |
| | | comActEasyPhotoScreenVO.setCurrentNum( |
| | | countMap.get("currentNum") == null ? 0L : Long.valueOf(countMap.get("currentNum").toString())); |
| | | comActEasyPhotoScreenVO |
| | | .setNoneDeal(countMap.get("noneDeal") == null ? 0L : Long.valueOf(countMap.get("noneDeal").toString())); |
| | | comActEasyPhotoScreenVO |
| | | .setPubPoint(countMap.get("pubPoint") == null ? 0 : Integer.valueOf(countMap.get("pubPoint").toString())); |
| | | comActEasyPhotoScreenVO.setDealTime( |
| | | countMap.get("dealTime") == null ? 0 : Double.valueOf(countMap.get("dealTime").toString()).intValue()); |
| | | List<EastPhotoVO> list = new ArrayList<>(); |
| | | for(PbWorkVO workVO: listHalfYear()){ |
| | | String nowDate = DateUtils.getDateFormatString(DateUtil.parseDate(workVO.getStart()),moth_format_str); |
| | | EastPhotoVO result = comActEasyPhotoDAO.countByTime(workVO.getStart(),workVO.getEnd(),nowDate,communityId); |
| | | for (PbWorkVO workVO : listHalfYear()) { |
| | | String nowDate = DateUtils.getDateFormatString(DateUtil.parseDate(workVO.getStart()), moth_format_str); |
| | | EastPhotoVO result = |
| | | comActEasyPhotoDAO.countByTime(workVO.getStart(), workVO.getEnd(), nowDate, communityId); |
| | | result.setMonth(workVO.getMonth()); |
| | | list.add(result); |
| | | } |
| | |
| | | } |
| | | |
| | | private List<EasyPhotoPointVO> getList(Map<String, Long> dealMap) { |
| | | Set<Map.Entry<String,Long>> entrySet = dealMap.entrySet(); |
| | | Set<Map.Entry<String, Long>> entrySet = dealMap.entrySet(); |
| | | |
| | | List<EasyPhotoPointVO> list = new ArrayList<>(); |
| | | for(Map.Entry<String,Long> en:entrySet){ |
| | | for (Map.Entry<String, Long> en : entrySet) { |
| | | EasyPhotoPointVO easyPhotoPointVO = new EasyPhotoPointVO(); |
| | | easyPhotoPointVO.setTypeName(en.getKey()); |
| | | easyPhotoPointVO.setPoint(en.getValue().intValue()); |
| | |
| | | @Override |
| | | public R workCount(Long communityId) { |
| | | ComActWorkScreenVO comActWorkScreenVO = new ComActWorkScreenVO(); |
| | | //已完成 |
| | | // 已完成 |
| | | comActWorkScreenVO.setCompletetList(comActNeighborCircleDAO.countAllCompletedWorkByCommunityId(communityId)); |
| | | |
| | | //未完成 |
| | | // 未完成 |
| | | comActWorkScreenVO.setNoneList(comActNeighborCircleDAO.countAllNoneCompletedWorkByCommunityId(communityId)); |
| | | comActWorkScreenVO.setTotalCompleted(comActWorkScreenVO.getCompletetList().stream().mapToInt(PieElementVO::getNum).sum()); |
| | | comActWorkScreenVO.setTotalNoneCompleted(comActWorkScreenVO.getNoneList().stream().mapToInt(PieElementVO::getNum).sum()); |
| | | comActWorkScreenVO |
| | | .setTotalCompleted(comActWorkScreenVO.getCompletetList().stream().mapToInt(PieElementVO::getNum).sum()); |
| | | comActWorkScreenVO |
| | | .setTotalNoneCompleted(comActWorkScreenVO.getNoneList().stream().mapToInt(PieElementVO::getNum).sum()); |
| | | |
| | | //统计平均耗时、平均每天完成个数 |
| | | Map<String,Object> avgMap = comActNeighborCircleDAO.countAvgByCommunityId(communityId); |
| | | comActWorkScreenVO.setAvgTime(avgMap.get("avgTime") == null?"0h":convertTimeStr(Double.valueOf(avgMap.get("avgTime").toString()).intValue())); |
| | | // 统计平均耗时、平均每天完成个数 |
| | | Map<String, Object> avgMap = comActNeighborCircleDAO.countAvgByCommunityId(communityId); |
| | | comActWorkScreenVO.setAvgTime(avgMap.get("avgTime") == null ? "0h" |
| | | : convertTimeStr(Double.valueOf(avgMap.get("avgTime").toString()).intValue())); |
| | | |
| | | ComActDO comActDO = comActDAO.selectById(communityId); |
| | | BigDecimal days = new BigDecimal(DateUtil.betweenDay(comActDO.getCreateAt(),new Date(),false)); |
| | | BigDecimal days = new BigDecimal(DateUtil.betweenDay(comActDO.getCreateAt(), new Date(), false)); |
| | | BigDecimal num = new BigDecimal(comActWorkScreenVO.getTotalCompleted()); |
| | | BigDecimal rt = num.divide(days,1, RoundingMode.HALF_UP); |
| | | BigDecimal rt = num.divide(days, 1, RoundingMode.HALF_UP); |
| | | comActWorkScreenVO.setEveryDayNum(rt.toString()); |
| | | return R.ok(comActWorkScreenVO); |
| | | } |
| | | |
| | | private String convertTimeStr(int minute) { |
| | | int hour = minute/60; |
| | | int min = minute%60; |
| | | int hour = minute / 60; |
| | | int min = minute % 60; |
| | | StringBuilder timestr = new StringBuilder(); |
| | | if(hour > 0){ |
| | | if (hour > 0) { |
| | | timestr.append(hour).append("h"); |
| | | } |
| | | if(min > 0){ |
| | | if (min > 0) { |
| | | timestr.append(min).append("min"); |
| | | } |
| | | return timestr.toString(); |
| | | } |
| | | |
| | | @Override |
| | | public R dynamicWork(Long communityId){ |
| | | public R dynamicWork(Long communityId) { |
| | | ComDynamicWorkScreenVO workScreenVO = new ComDynamicWorkScreenVO(); |
| | | String date = DateUtils.getDateFormatString(new Date(),moth_format_str); |
| | | Map<String,Long> countMap = comActDynDAO.countByCommunityId(communityId,date); |
| | | if(!countMap.isEmpty()){ |
| | | workScreenVO.setTotalNum(countMap.get("dynTotal")== null ? 0L : Long.valueOf(countMap.get("dynTotal").toString())); |
| | | workScreenVO.setCurrentNum(countMap.get("currentNum")== null ? 0L : Long.valueOf(countMap.get("currentNum").toString())); |
| | | String date = DateUtils.getDateFormatString(new Date(), moth_format_str); |
| | | Map<String, Long> countMap = comActDynDAO.countByCommunityId(communityId, date); |
| | | if (!countMap.isEmpty()) { |
| | | workScreenVO |
| | | .setTotalNum(countMap.get("dynTotal") == null ? 0L : Long.valueOf(countMap.get("dynTotal").toString())); |
| | | workScreenVO.setCurrentNum( |
| | | countMap.get("currentNum") == null ? 0L : Long.valueOf(countMap.get("currentNum").toString())); |
| | | } |
| | | |
| | | //计算平均每天动态 |
| | | // 计算平均每天动态 |
| | | DateScreenVO countAvg = comActDynDAO.countByAvgCommunityId(communityId); |
| | | if(countAvg != null){ |
| | | int day = DateUtils.differentDays(countAvg.getStartTime(),countAvg.getEndTime()); |
| | | if(day > 0){ |
| | | workScreenVO.setCurrentAvgNum(workScreenVO.getTotalNum().intValue()/day); |
| | | if (countAvg != null) { |
| | | int day = DateUtils.differentDays(countAvg.getStartTime(), countAvg.getEndTime()); |
| | | if (day > 0) { |
| | | workScreenVO.setCurrentAvgNum(workScreenVO.getTotalNum().intValue() / day); |
| | | } |
| | | } |
| | | |
| | | //查询最新的10条社区动态 |
| | | // 查询最新的10条社区动态 |
| | | List<String> dynList = new ArrayList<>(); |
| | | List<ComActDynDO> actDynDOList = comActDynDAO.selectList(new QueryWrapper<ComActDynDO>().lambda().eq(ComActDynDO::getCommunityId,communityId).orderByDesc(ComActDynDO::getCreateAt).last("limit 10")); |
| | | if(!actDynDOList.isEmpty()){ |
| | | List<ComActDynDO> actDynDOList = comActDynDAO.selectList(new QueryWrapper<ComActDynDO>().lambda() |
| | | .eq(ComActDynDO::getCommunityId, communityId).orderByDesc(ComActDynDO::getCreateAt).last("limit 10")); |
| | | if (!actDynDOList.isEmpty()) { |
| | | actDynDOList.forEach(actDyn -> { |
| | | dynList.add(actDyn.getTitle()); |
| | | }); |
| | | } |
| | | workScreenVO.setDynList(dynList); |
| | | |
| | | //统计近半年数据 |
| | | // 统计近半年数据 |
| | | List<DynamicWorkVO> list = new ArrayList<>(); |
| | | for(DynamicWorkVO dynamicWorkVO: listHalfYearByDyn()){ |
| | | DynamicWorkVO result = comActDynDAO.countByTime(dynamicWorkVO.getStart(),dynamicWorkVO.getEnd(),communityId); |
| | | for (DynamicWorkVO dynamicWorkVO : listHalfYearByDyn()) { |
| | | DynamicWorkVO result = |
| | | comActDynDAO.countByTime(dynamicWorkVO.getStart(), dynamicWorkVO.getEnd(), communityId); |
| | | result.setMonth(dynamicWorkVO.getMonth()); |
| | | list.add(result); |
| | | } |
| | |
| | | |
| | | private List<DynamicWorkVO> listHalfYearByDyn() { |
| | | List<DynamicWorkVO> dateList = new ArrayList<>(); |
| | | Date now = new Date(); |
| | | for(int i= 6;i>=1;i--){ |
| | | Date date = DateUtils.getDateM(now,-i); |
| | | Date now = new Date(); |
| | | for (int i = 6; i >= 1; i--) { |
| | | Date date = DateUtils.getDateM(now, -i); |
| | | DateTime endDay = DateUtil.endOfMonth(date); |
| | | |
| | | int m = DateUtil.month(endDay); |
| | | m++; |
| | | if(m == 12){ |
| | | if (m == 12) { |
| | | m = 0; |
| | | } |
| | | int day = DateUtil.dayOfMonth(endDay); |
| | | int half = day/2; |
| | | String month = DateUtil.format(date,moth_format_str); |
| | | int half = day / 2; |
| | | String month = DateUtil.format(date, moth_format_str); |
| | | DynamicWorkVO dynamicWorkVO = new DynamicWorkVO(); |
| | | dynamicWorkVO.setMonth(monthStr[m]+"月上旬"); |
| | | dynamicWorkVO.setStart(month+ "-01 00:00:00"); |
| | | dynamicWorkVO.setEnd(month+ "-"+half+" 23:59:58"); |
| | | dynamicWorkVO.setMonth(monthStr[m] + "月上旬"); |
| | | dynamicWorkVO.setStart(month + "-01 00:00:00"); |
| | | dynamicWorkVO.setEnd(month + "-" + half + " 23:59:58"); |
| | | dateList.add(dynamicWorkVO); |
| | | DynamicWorkVO dynamicWorkVO1 = new DynamicWorkVO(); |
| | | dynamicWorkVO1.setMonth(monthStr[m]+"月下旬"); |
| | | dynamicWorkVO1.setStart(month+ "-"+half+" 23:59:58"); |
| | | dynamicWorkVO1.setEnd(DateUtils.getDateFormatString(endDay,"yyyy-MM-dd HH:mm:ss")); |
| | | dynamicWorkVO1.setMonth(monthStr[m] + "月下旬"); |
| | | dynamicWorkVO1.setStart(month + "-" + half + " 23:59:58"); |
| | | dynamicWorkVO1.setEnd(DateUtils.getDateFormatString(endDay, "yyyy-MM-dd HH:mm:ss")); |
| | | dateList.add(dynamicWorkVO1); |
| | | } |
| | | return dateList; |