From db58d32b8b977233a5953f63700673d152d4262c Mon Sep 17 00:00:00 2001
From: yanghui <2536613402@qq.com>
Date: 星期四, 08 十二月 2022 09:34:59 +0800
Subject: [PATCH] #feat 微信发送消息格式化金额为两位小数
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java | 101 +++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 98 insertions(+), 3 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java
index bb13f6f..cec6ea6 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java
@@ -1,9 +1,10 @@
package com.panzhihua.service_community.service.impl;
import java.math.BigDecimal;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.time.LocalDate;
+import java.util.*;
+import java.util.function.Function;
+import java.util.stream.Collectors;
import javax.annotation.Resource;
@@ -11,6 +12,7 @@
import cn.hutool.core.util.DesensitizedUtil;
import com.panzhihua.common.model.dtos.common.PageComActEasyPhotoEvaluateDto;
import com.panzhihua.common.model.vos.common.ComActEasyPhotoHandlerVo;
+import com.panzhihua.common.model.vos.community.acid.ComActAcidColorChartsVO;
import com.panzhihua.common.model.vos.community.easyPhoto.BannerVO;
import com.panzhihua.service_community.entity.ComActEasyPhotoEvaluate;
import com.panzhihua.service_community.entity.ComActEasyPhotoHandler;
@@ -1079,4 +1081,97 @@
return R.fail();
}
+ /**
+ * 获取社区置顶动态banner
+ * @param communityId
+ * */
+ @Override
+ public R getUserRewardNew(Long userId, Long communityId) {
+ ComActEasyPhotoRewardVO easyPhotoRewardVO=new ComActEasyPhotoRewardVO();
+ List<BannerVO> bannerVOS=this.comActEasyPhotoDAO.getBanner(communityId);
+ if(!bannerVOS.isEmpty()){
+ easyPhotoRewardVO.setBannerVOS(bannerVOS);
+ }
+ return R.ok(easyPhotoRewardVO);
+ }
+
+ @Override
+ public R selectStatisticsPhoto(){
+ //所有分组
+ List<StatisticsPhotoVO> statisticsPhotoVOS = this.baseMapper.selectPhotoAll();
+ int all = statisticsPhotoVOS.stream().mapToInt(StatisticsPhotoVO::getCountNum).sum();
+ for (StatisticsPhotoVO statisticsPhotoVO : statisticsPhotoVOS) {
+ if (0!=all){
+ BigDecimal countNum = new BigDecimal(statisticsPhotoVO.getCountNum());
+ BigDecimal allDecimal = new BigDecimal(all);
+ BigDecimal percent = countNum.divide(allDecimal,4, BigDecimal.ROUND_HALF_DOWN).multiply(new BigDecimal(100));
+ statisticsPhotoVO.setPercent(percent);
+ }
+ }
+// Map<String, StatisticsPhotoVO> circleMap = statisticsPhotoVOS
+// .stream()
+// .collect(Collectors.toMap(StatisticsPhotoVO::getCountName, Function.identity()));
+
+
+ //按月份查询
+ List<StatisticsPhotoVO> statisticsPhotoVOS1 = this.baseMapper.selectPhotoByMonth();
+ //按类型分组求和
+ Map<String, IntSummaryStatistics> statusCollect = statisticsPhotoVOS1
+ .stream()
+ .collect(Collectors.groupingBy(StatisticsPhotoVO::getCountName,
+ Collectors.summarizingInt(StatisticsPhotoVO::getCountNum)));
+
+ for (StatisticsPhotoVO statisticsPhotoVO : statisticsPhotoVOS1) {
+ String countName = statisticsPhotoVO.getCountName();
+ if (statusCollect.containsKey(countName)){
+ IntSummaryStatistics intSummaryStatistics = statusCollect.get(countName);
+ long sum = intSummaryStatistics.getSum();
+ if (0L!=sum) {
+ BigDecimal countNum = new BigDecimal(statisticsPhotoVO.getCountNum());
+ BigDecimal sumDecimal = new BigDecimal(sum);
+ BigDecimal percent = countNum.divide(sumDecimal, 4, BigDecimal.ROUND_HALF_DOWN).multiply(new BigDecimal(100));
+ statisticsPhotoVO.setPercent(percent);
+ }
+ }
+ }
+ Map<String, Map<String, StatisticsPhotoVO>> chartMap = statisticsPhotoVOS1.stream().collect(Collectors.groupingBy(StatisticsPhotoVO::getStatisticsDate, Collectors.toMap(StatisticsPhotoVO::getCountName, Function.identity())));
+
+
+
+
+ // 状态 1待处理 2进行中 3已驳回 4待评价 5.已完成
+ String[] statusArr = {"待处理","进行中","已驳回","待评价","已完成"};
+ List<String> latest12Month = DateUtils.getLatest12Month(LocalDate.now(), 10);
+ for (String month : latest12Month) {
+ Map<String, StatisticsPhotoVO> map1;
+ if(chartMap.containsKey(month)){
+ map1 = chartMap.get(month);
+ }else {
+ map1 = new HashMap<>();
+ }
+ for (String status : statusArr) {
+ if (!map1.containsKey(status)){
+ StatisticsPhotoVO statisticsPhotoVO = new StatisticsPhotoVO();
+ statisticsPhotoVO.setCountNum(0);
+ statisticsPhotoVO.setStatisticsDate(month);
+ statisticsPhotoVO.setCountName(status);
+ statisticsPhotoVOS1.add(statisticsPhotoVO);
+ map1.put(status,statisticsPhotoVO);
+ }
+ }
+ chartMap.put(month,map1);
+ }
+ Map<String, List<StatisticsPhotoVO>> stringListMap = statisticsPhotoVOS1
+ .stream()
+ .sorted(Comparator.comparing(StatisticsPhotoVO::getStatisticsDate))
+ .collect(Collectors.groupingBy(StatisticsPhotoVO::getCountName));
+
+
+ Map<String,Object> retMap = new HashMap<>();
+ retMap.put("statisticsPhotoVOS",statisticsPhotoVOS);
+ retMap.put("monthMap",stringListMap);
+
+ return R.ok(retMap);
+ }
+
}
--
Gitblit v1.7.1