Commit 81905bf6 authored by unset's avatar unset

会员统计信息修改

parent 579bfa2e
......@@ -2,7 +2,6 @@ package com.xxfc.platform.order.biz;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.ace.cache.annotation.Cache;
import com.ace.cache.annotation.CacheClear;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
......@@ -33,6 +32,7 @@ import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
......@@ -344,7 +344,7 @@ public class OrderStatisticsBiz extends BaseBiz<OrderStatisticsMapper, OrderStat
//进行分页处理
return PageResult.nowPageResult(query.getPage(), query.getLimit(), arrayList);
return PageResult.nowPageResult(query.getPage(), query.getLimit(), arrayList.stream().sorted(Comparator.comparing(MembersOrderDto::getTimeSlot).reversed()).collect(Collectors.toList()));
}
......
......@@ -439,25 +439,28 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
list.add(total);
List<BaseUserMemberLevel> levelList = userFeign.levels();
Map<Integer, List<BaseUserMemberLevel>> levelMap = levelList.stream().collect(Collectors.groupingBy(BaseUserMemberLevel::getLevel));
Map<Integer, MemberOrderStatisticsBo> memberOrderStatisticsBoMap = new HashMap<>();
for (Map.Entry<Integer, List<BaseUserMemberLevel>> entry : levelMap.entrySet()) {
List<BaseUserMemberLevel> baseUserMemberLevelList = entry.getValue();
if (baseUserMemberLevelList != null && baseUserMemberLevelList.size() > 0) {
MemberOrderStatisticsBo memberOrderStatisticsBo = new MemberOrderStatisticsBo();
memberOrderStatisticsBo.setAmountName(baseUserMemberLevelList.get(0).getName() + "支付总额(元)");
memberOrderStatisticsBo.setOrderNumName(baseUserMemberLevelList.get(0).getName() + "订单");
memberOrderStatisticsBo.setOrderNum(0);
memberOrderStatisticsBo.setTotalAmount(BigDecimal.ZERO);
memberOrderStatisticsBoMap.put(entry.getKey(), memberOrderStatisticsBo);
}
}
for (Map.Entry<Integer, List<MemberOrderBo>> entry : map.entrySet()) {
MemberOrderStatisticsBo memberOrderStatisticsBo = new MemberOrderStatisticsBo();
memberOrderStatisticsBo.setType(entry.getKey());
List<MemberOrderBo> memberOrderBoList = entry.getValue();
if (memberOrderBoList != null) {
List<BaseUserMemberLevel> baseUserMemberLevelList = levelMap.get(memberOrderStatisticsBo.getType());
if (baseUserMemberLevelList != null && baseUserMemberLevelList.size() > 0) {
memberOrderStatisticsBo.setAmountName(baseUserMemberLevelList.get(0).getName() + "支付总额(元)");
memberOrderStatisticsBo.setOrderNumName(baseUserMemberLevelList.get(0).getName() + "订单");
MemberOrderStatisticsBo memberOrderStatisticsBo = memberOrderStatisticsBoMap.get(entry.getKey());
if (memberOrderStatisticsBo != null) {
List<MemberOrderBo> memberOrderBoList = entry.getValue();
if (memberOrderBoList != null) {
memberOrderStatisticsBo.setOrderNum(memberOrderBoList.size());
memberOrderStatisticsBo.setTotalAmount(new BigDecimal(memberOrderBoList.stream().mapToDouble(n -> n.getOrderAmount()!=null ?n.getOrderAmount().doubleValue()
: 0.00).summaryStatistics().getSum()).setScale(2, BigDecimal.ROUND_HALF_UP));
}
memberOrderStatisticsBo.setOrderNum(memberOrderBoList.size());
memberOrderStatisticsBo.setTotalAmount(new BigDecimal(memberOrderBoList.stream().mapToDouble(n -> n.getOrderAmount()!=null ?n.getOrderAmount().doubleValue()
: 0.00).summaryStatistics().getSum()).setScale(2, BigDecimal.ROUND_HALF_UP));
} else {
memberOrderStatisticsBo.setOrderNum(0);
memberOrderStatisticsBo.setTotalAmount(BigDecimal.ZERO);
}
}
list.add(memberOrderStatisticsBo);
}
return list.stream().sorted(Comparator.comparing(MemberOrderStatisticsBo::getType)).collect(Collectors.toList());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment