首页订单统计

pull/1/head
czc 2 years ago
parent aef30677a9
commit d58dd45536

@ -2,6 +2,7 @@ package com.cyl.manager.statistics.controller;
import com.cyl.manager.statistics.pojo.GoodsStatisticsQueryParam; import com.cyl.manager.statistics.pojo.GoodsStatisticsQueryParam;
import com.cyl.manager.statistics.pojo.OrderStatisticsQueryParam;
import com.cyl.manager.statistics.pojo.vo.MemberAndCartStatisticsVO; import com.cyl.manager.statistics.pojo.vo.MemberAndCartStatisticsVO;
import com.cyl.manager.statistics.pojo.vo.OrderAndAftersaleStatisticsVO; import com.cyl.manager.statistics.pojo.vo.OrderAndAftersaleStatisticsVO;
import com.cyl.manager.statistics.pojo.vo.OrderStatisticsVO; import com.cyl.manager.statistics.pojo.vo.OrderStatisticsVO;
@ -14,9 +15,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
@ -46,10 +45,9 @@ public class IndexStatisticsManagerController {
} }
@ApiOperation(value = "订单信息") @ApiOperation(value = "订单信息")
@GetMapping("/orderStatistics") @PostMapping("/orderStatistics")
public ResponseEntity<List<OrderStatisticsVO>> orderStatistics() { public ResponseEntity<List<OrderStatisticsVO>> orderStatistics(@RequestBody OrderStatisticsQueryParam param) {
return ResponseEntity.ok(indexStatisticsService.orderStatistics(param));
return ResponseEntity.ok(indexStatisticsService.orderStatistics());
} }
@ApiOperation(value = "会员数,加购数") @ApiOperation(value = "会员数,加购数")

@ -2,6 +2,7 @@ package com.cyl.manager.statistics.mapper;
import com.cyl.manager.statistics.pojo.GoodsStatisticsQueryParam; import com.cyl.manager.statistics.pojo.GoodsStatisticsQueryParam;
import com.cyl.manager.statistics.pojo.OrderStatisticsQueryParam;
import com.cyl.manager.statistics.pojo.vo.OrderStatisticsVO; import com.cyl.manager.statistics.pojo.vo.OrderStatisticsVO;
import com.cyl.manager.statistics.pojo.vo.ProductTopVO; import com.cyl.manager.statistics.pojo.vo.ProductTopVO;
@ -11,6 +12,6 @@ public interface IndexStatisticsMapper {
List<ProductTopVO> goodsSkuStatistics(GoodsStatisticsQueryParam goodsStatisticsQueryParam); List<ProductTopVO> goodsSkuStatistics(GoodsStatisticsQueryParam goodsStatisticsQueryParam);
List<ProductTopVO> goodsStatistics(GoodsStatisticsQueryParam goodsStatisticsQueryParam); List<ProductTopVO> goodsStatistics(GoodsStatisticsQueryParam goodsStatisticsQueryParam);
List<OrderStatisticsVO> orderStatistics(); List<OrderStatisticsVO> orderStatistics(OrderStatisticsQueryParam param);
} }

@ -0,0 +1,14 @@
package com.cyl.manager.statistics.pojo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel("订单统计查询条件对象")
@Data
public class OrderStatisticsQueryParam {
@ApiModelProperty("查询范围类型 1近一周 2近一个月")
private Integer type;
}

@ -7,6 +7,7 @@ import com.cyl.manager.oms.service.OrderDeliveryHistoryService;
import com.cyl.manager.oms.service.OrderService; import com.cyl.manager.oms.service.OrderService;
import com.cyl.manager.statistics.mapper.IndexStatisticsMapper; import com.cyl.manager.statistics.mapper.IndexStatisticsMapper;
import com.cyl.manager.statistics.pojo.GoodsStatisticsQueryParam; import com.cyl.manager.statistics.pojo.GoodsStatisticsQueryParam;
import com.cyl.manager.statistics.pojo.OrderStatisticsQueryParam;
import com.cyl.manager.statistics.pojo.vo.MemberAndCartStatisticsVO; import com.cyl.manager.statistics.pojo.vo.MemberAndCartStatisticsVO;
import com.cyl.manager.statistics.pojo.vo.OrderAndAftersaleStatisticsVO; import com.cyl.manager.statistics.pojo.vo.OrderAndAftersaleStatisticsVO;
import com.cyl.manager.statistics.pojo.vo.OrderStatisticsVO; import com.cyl.manager.statistics.pojo.vo.OrderStatisticsVO;
@ -51,8 +52,8 @@ public class IndexStatisticsService {
} }
} }
public List<OrderStatisticsVO> orderStatistics() { public List<OrderStatisticsVO> orderStatistics(OrderStatisticsQueryParam param) {
return indexStatisticsMapper.orderStatistics(); return indexStatisticsMapper.orderStatistics(param);
} }
public MemberAndCartStatisticsVO statMemberAndCart() { public MemberAndCartStatisticsVO statMemberAndCart() {

@ -36,6 +36,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT date_sub( curdate( ), INTERVAL 28 DAY ) AS date UNION ALL SELECT date_sub( curdate( ), INTERVAL 28 DAY ) AS date UNION ALL
SELECT date_sub( curdate( ), INTERVAL 29 DAY ) AS date SELECT date_sub( curdate( ), INTERVAL 29 DAY ) AS date
</sql> </sql>
<sql id="dateRange2">
SELECT
curdate( ) AS date UNION ALL
SELECT date_sub( curdate( ), INTERVAL 1 DAY ) AS date UNION ALL
SELECT date_sub( curdate( ), INTERVAL 2 DAY ) AS date UNION ALL
SELECT date_sub( curdate( ), INTERVAL 3 DAY ) AS date UNION ALL
SELECT date_sub( curdate( ), INTERVAL 4 DAY ) AS date UNION ALL
SELECT date_sub( curdate( ), INTERVAL 5 DAY ) AS date UNION ALL
SELECT date_sub( curdate( ), INTERVAL 6 DAY ) AS date
</sql>
<resultMap id="topSalesResultMap" type="com.cyl.manager.statistics.pojo.vo.ProductTopVO"> <resultMap id="topSalesResultMap" type="com.cyl.manager.statistics.pojo.vo.ProductTopVO">
<result property="productName" column="product_name"/> <result property="productName" column="product_name"/>
<result property="totalSales" column="total_sales"/> <result property="totalSales" column="total_sales"/>
@ -59,7 +69,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
IFNULL(b.order_amount,0) orderAmount IFNULL(b.order_amount,0) orderAmount
from from
( (
<include refid="dateRange"></include> <choose>
<when test="type == 1">
<include refid="dateRange2"></include>
</when>
<when test="type == 2">
<include refid="dateRange"></include>
</when>
</choose>
) a ) a
left join ( left join (
SELECT DATE_FORMAT(create_time, '%Y-%m-%d') as date, SELECT DATE_FORMAT(create_time, '%Y-%m-%d') as date,

Loading…
Cancel
Save