|
|
@@ -19,9 +19,7 @@ import shop.alien.store.service.LifeGroupBuyCountService;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.math.RoundingMode;
|
|
|
-import java.util.Comparator;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
@@ -69,7 +67,7 @@ public class LifeGroupBuyCountServiceImpl extends ServiceImpl<LifeGroupBuyCountM
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<LifeGroupBuyCountVo> getJysj(String storeId) {
|
|
|
+ public Map<String, LifeGroupBuyCountVo> getJysj(String storeId) {
|
|
|
String today = DateUtils.format(new Date(), "yyyy-MM-dd");
|
|
|
String yesterday = DateUtils.format(shop.alien.util.common.DateUtils.calcDays(new Date(), -1), "yyyy-MM-dd");
|
|
|
|
|
|
@@ -114,12 +112,26 @@ public class LifeGroupBuyCountServiceImpl extends ServiceImpl<LifeGroupBuyCountM
|
|
|
countVo.setYesCountNum(yesterdayOrderNum.toString());
|
|
|
todayList.add(countVo);
|
|
|
bfb(todayList);
|
|
|
- return todayList.stream().sorted(Comparator.comparing(LifeGroupBuyCountVo::getCountType)).collect(Collectors.toList());
|
|
|
+
|
|
|
+ Map<String, LifeGroupBuyCountVo> map = new HashMap<>();
|
|
|
+ map.put("tcfwl", new LifeGroupBuyCountVo());
|
|
|
+ map.put("tcfks", new LifeGroupBuyCountVo());
|
|
|
+ map.put("sjtcs", new LifeGroupBuyCountVo());
|
|
|
+ map.put("xjtcs", new LifeGroupBuyCountVo());
|
|
|
+ map.put("sfrs", new LifeGroupBuyCountVo());
|
|
|
+ todayList.stream().filter(item -> "0".equals(item.getCountType())).findFirst().ifPresent(item -> map.put("tcfwl", item));
|
|
|
+ todayList.stream().filter(item -> "1".equals(item.getCountType())).findFirst().ifPresent(item -> map.put("tcfks", item));
|
|
|
+ todayList.stream().filter(item -> "2".equals(item.getCountType())).findFirst().ifPresent(item -> map.put("sjtcs", item));
|
|
|
+ todayList.stream().filter(item -> "3".equals(item.getCountType())).findFirst().ifPresent(item -> map.put("xjtcs", item));
|
|
|
+ todayList.stream().filter(item -> "4".equals(item.getCountType())).findFirst().ifPresent(item -> map.put("sfrs", item));
|
|
|
+ return map;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public List<LifeGroupBuyCountDateVo> getSphxzb(String storeId) {
|
|
|
- return lifeGroupBuyCountMapper.selectSphxzbListByStoreId(storeId, DateUtils.format(new Date(), "yyyy-MM-dd"), DateUtils.format(shop.alien.util.common.DateUtils.calcDays(new Date(), -7), "yyyy-MM-dd"));
|
|
|
+ List<LifeGroupBuyCountDateVo> lifeGroupBuyCountDateVos = lifeGroupBuyCountMapper.selectSphxzbListByStoreId(storeId, DateUtils.format(shop.alien.util.common.DateUtils.calcDays(new Date(), -6), "yyyy-MM-dd"), DateUtils.format(new Date(), "yyyy-MM-dd"));
|
|
|
+ lifeGroupBuyCountDateVos.forEach(i -> i.setCountDate(DateUtils.format(DateUtils.parseDate(i.getCountDate()), "MM-dd")));
|
|
|
+ return lifeGroupBuyCountDateVos;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -134,7 +146,7 @@ public class LifeGroupBuyCountServiceImpl extends ServiceImpl<LifeGroupBuyCountM
|
|
|
|
|
|
private void bfb(List<LifeGroupBuyCountVo> list) {
|
|
|
for (LifeGroupBuyCountVo item : list) {
|
|
|
- item.setJqrBfb(StringUtils.isNotEmpty(item.getYesCountNum()) && !"0".equals(item.getYesCountNum()) ? new BigDecimal(item.getYesCountNum()).subtract(new BigDecimal(item.getCountNum())).divide(new BigDecimal(item.getYesCountNum()), 4, RoundingMode.HALF_UP).multiply(new BigDecimal(100)) + "%" : "0.0%");
|
|
|
+ item.setJqrBfb(StringUtils.isNotEmpty(item.getYesCountNum()) && !"0".equals(item.getYesCountNum()) ? new BigDecimal(item.getYesCountNum()).subtract(new BigDecimal(item.getCountNum())).divide(new BigDecimal(item.getYesCountNum()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal(100)) + "%" : "0.00%");
|
|
|
}
|
|
|
}
|
|
|
}
|