From f59d6b8d46287afc9ec306b531ed88ced407f45f Mon Sep 17 00:00:00 2001 From: gongzuming <gongzuming> Date: 星期一, 11 十一月 2024 14:33:22 +0800 Subject: [PATCH] 优化统计 --- src/main/java/com/mzl/flower/service/statistics/StatisticsService.java | 36 ++++++++++++++++++++++++++++-------- 1 files changed, 28 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/mzl/flower/service/statistics/StatisticsService.java b/src/main/java/com/mzl/flower/service/statistics/StatisticsService.java index 5c3ecc1..92767a5 100644 --- a/src/main/java/com/mzl/flower/service/statistics/StatisticsService.java +++ b/src/main/java/com/mzl/flower/service/statistics/StatisticsService.java @@ -9,6 +9,7 @@ import com.mzl.flower.dto.request.flower.FlowerQueryDTO; import com.mzl.flower.dto.request.payment.OrderItemSalesQueryDTO; import com.mzl.flower.dto.request.payment.OrderQueryDTO; +import com.mzl.flower.dto.response.payment.OrderStatusCountDTO; import com.mzl.flower.dto.response.statistics.FlowerStatisticsDTO; import com.mzl.flower.dto.response.statistics.OrderStatisticsDTO; import com.mzl.flower.dto.response.statistics.RateStatisticsDTO; @@ -105,14 +106,27 @@ .eq("is_enabled", 1) .eq("status", "P") .eq("deleted", 0)); - dto.setSupplierCount(sc.longValue());//用户管理:统计商户列表已启用的全部用户(点击跳转到商户列表) + dto.setSupplierCount(sc.longValue()); - Integer oc = orderMapper.selectCount(new QueryWrapper<Order>() - .eq("deleted", 0) - .isNotNull("payment_time") - .isNull("cancel_time") - .isNull("refund_time")); - dto.setOrderCount(oc.longValue());//订单管理:全部订单数量-待付款-已取消-已退款(点击跳转到订单列表) + Integer cc = customerMapper.selectCount(new QueryWrapper<Customer>() + .eq("is_enabled", 1) + .eq("deleted", 0)); + dto.setCustomerCount(cc.longValue());//用户管理:统计商户列表已启用的全部用户(点击跳转到商户列表) + + //订单管理:全部订单数量-待付款-已取消-已退款(点击跳转到订单列表) + List<OrderStatusCountDTO> ll = orderMapper.getOrderStatusCount(new OrderQueryDTO()); + Integer oc = 0; + if (ll != null && ll.size() > 0) { + for (OrderStatusCountDTO c : ll) { + if(Constants.ORDER_STATUS_BACKEND.PENDING.name().equals(c.getValue()) + || Constants.ORDER_STATUS_BACKEND.CANCEL.name().equals(c.getValue()) + || Constants.ORDER_STATUS_BACKEND.REFUND.name().equals(c.getValue())){ + continue; + } + oc += c.getOrderCount(); + } + } + dto.setOrderCount(oc.longValue()); page = new Page(1, 1); OrderQueryDTO oq = new OrderQueryDTO(); @@ -307,7 +321,11 @@ LocalDateTime beginY = begin.plusDays(-1); RateStatisticsDTO dto = new RateStatisticsDTO(); - //TODO 用户访问量:点击到交易大厅或者商品详情页面计算,同一个用户,每天只计算一次(包含游客)(并计算新增量,计算日环比) + //用户访问量:点击到交易大厅或者商品详情页面计算,同一个用户,每天只计算一次(包含游客)(并计算新增量,计算日环比) + + Integer c = userAccessMapper.selectCount(new QueryWrapper<UserAccess>()); + dto.setCount(c.longValue()); + Integer cT = userAccessMapper.selectCount(new QueryWrapper<UserAccess>() .gt("create_time", begin) .le("create_time", end) @@ -376,6 +394,8 @@ BigDecimal yy = BigDecimal.valueOf(yesterday); BigDecimal rate = ttyy.divide(yy, 2, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100)); return rate.doubleValue(); + } else if (today <= 0) { + return 0D; } return 100D; -- Gitblit v1.9.3